-3

У меня есть приложение для Android, в котором я создаю настраиваемый диалогBox, который построен из файла XML. Пользовательский диалогBox содержит 10 различных полей edittext. Мой вопрос в том, должен ли в моем коде MainActivity.java создавать эти edittext, когда мой код создает пользовательский диалогBox, или я должен просто создать их перед onCreate? Какой из них более эффективный/лучший? У каждого есть свои собственные цели?

Например:
ЗдесьДолжен ли я создавать Edittexts, когда пользовательский диалогBox создан или до onCreate? Что более эффективно?

EditText et1; 

     @Override 
     public void onCreate(Bundle savedInstanceState){ 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main);... 


Или здесь

public void dialogSettings() { 

      final Dialog dialogBox = new Dialog(context); 
      dialogBox.setContentView(R.layout.custom_dialog_settings); 
      dialogBox.setTitle(R.string.action_settings); 

      EditText et1; 

      dialogBox.show(); 

     } 
+0

Это не создание EditText, что инициализирует из EditText – Pankaj

+0

ммм это более декларирование в EditText, я не инициализируются его со значением –

ответ

1

Это все зависит, где вы хотите его использовать. Если вы используете его внутри onCreate, тогда объявите его внутри onCreate, иначе определите его глобально.

+0

круто спасибо :) –

+0

Это заставляет меня задаться вопросом: допустим, я хочу, чтобы загрузить диалог с настраиваемым представлением (назовем его 'theView') одним нажатием кнопки. Было бы лучше (работоспособно) загружать и инициализировать 'theView' методом' onCreate' или методом 'click' кнопки? –

+0

Если вы считаете, что кнопка будет нажата в разное время в активности, лучше ее инициализировать глобально (объявить ее глобально и инициализировать в onCreate), иначе инициализировать ее в методе onClick. –