layout.xml у файла есть кнопка, я не могу понять, как связать каждую кнопку, чтобы открыть новый экран настроек

#android #layout #button #onclick #preference

#Android #планировка #кнопка #нажать еще раз #предпочтение #макет #onclick

Вопрос:

layout.xml в файле есть кнопка, я не могу понять, как связать каждую кнопку, чтобы открыть новый экран настроек.

хочу изменить свое приложение, в настоящее время это все экран настроек, хотел изменить его, чтобы немного обновить пользовательский интерфейс, чтобы на главной странице были кнопки, и каждая из них откроет новый экран настроек, который я уже настроил, любой совет, я, кажется, не могу понять, как просто открыть эту уже созданную осыпь предпочтений.

Ответ №1:

Для чего-то вроде перехода на другой экран с главного экрана я сделаю что-то вроде этого:

 ImageView floor = (ImageView)findViewById(R.id.floor);
floor.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {   
        Intent intent = new Intent(Home.this, WheelDemo.class);
        startActivity(intent);
    }
});
  

floor — это изображение кнопки, оно запускает новое действие, WheelDemo при нажатии на него переходит на новый экран для этого действия. Просто убедитесь, что каждое действие зарегистрировано в вашем манифесте.

Ответ №2:

Во-первых, как заставить некоторый Java-код выполняться при нажатии на кнопку:

  • в XML-файле layout добавьте android:onClick="onSomethingDescriptiveClick"
  • в вашем действии добавьте метод public void onSomethingDescriptiveClick(View caller) {}

Этот метод будет выполнен, когда вы нажмете на кнопку в запущенном приложении. Замените SomethingDescriptive чем-нибудь описательным. Например, если на вашей кнопке написано «Настройки», метод обратного вызова может быть onPreferencesClick .

Далее, обратитесь к этому, чтобы узнать, как начать новое действие: http://developer.android.com/guide/topics/fundamentals/activities.html#StartingAnActivity

Ответ №3:

Я использовал обычную EditTextPreference, но обработал onPreferenceClick, чтобы отменить диалоговое окно и перехватить щелчок.

  mbtnCheckUpdate.setText ("Check Updates.");
 mbtnCheckUpdate.setOnPreferenceClickListener( new OnPreferenceClickListener()
    {
        @Override
        public boolean onPreferenceClick(Preference arg0)
        {
            ((EditTextPreference)arg0).getDialog().cancel();
            return true;
        }
    }
    );