Не выводит текст EditText'а
Создал AlertDialog, в котором методом .setView добавляю layout с EditText и кнопками:
AlertDialog.Builder builder = new AlertDialog.Builder(HomeActivity.this);
View view = HomeActivity.this.getLayoutInflater().inflate(R.layout.text_fields, null);
В этом же layout на одну из кнопок вешаю событие, которое должно брать значение EditText.
Код кнопки:
LayoutInflater factory = LayoutInflater.from(HomeActivity.this);
View view = factory.inflate(R.layout.text_fields, null);
EditText text = (EditText)view.findViewById(R.id.editText);
System.out.println("Text of view: " + text.getText());
Выводит либо дефолтное значение EditText, если оно установлено, либо пустоту, несмотря на то, что сам EditText заполнен.
Также если прописать
text.setText("some text");
то выводит some text.
Почему при нажатии на кнопку не выводится значение EditText?
upd
Если проделать эти манипуляции, но без Inflate и установкой setViewContent(R.layout.text_fields)
, то все выводится. То есть, полагаю, проблема в том, что ID EditText, созданного в AlertDialog.Builder, отсутствует.
Источник: Stack Overflow на русском