NullPointerException для EditText, расположенного в диалоге
1132 просмотра
2 ответа
Вот мой email_dialog.xml
макет:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TableRow
android:id="@+id/tableRow0"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/txtEmailAddress5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:text="mFry@smithmicro.com"/>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/btnCancelEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="200px"
android:text="Cancel" />
<Button
android:id="@+id/btnOkEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="200px"
android:text="Email" />
</TableRow>
Вот мой метод, который вызывает и использует его:
void showEmailDialog() {
// Final prevents the error in the newest onClick callback.
final Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.email_dialog);
dialog.setTitle("Enter Email Address");
dialog.setCancelable(true);
final EditText txtEA = (EditText) findViewById(R.id.txtEmailAddress5);
final Button cancelButton = (Button) dialog.findViewById(R.id.btnCancelEmail);
final Button sendButton = (Button) dialog.findViewById(R.id.btnOkEmail);
// set up cancel button
cancelButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
// set up send button
sendButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "sendButton onClick()");
String emailAddress;
Log.d(TAG, "sendButton onClick() - String emailAddress");
Log.d(TAG,
"sendButton onClick() - txtEmailAddress = (EditText)");
emailAddress = txtEA.getText().toString();
Log.d(TAG,
"sendButton onClick() - emailAddress = getText().toString();");
sendEmail(emailAddress);
dialog.dismiss();
}
});
dialog.show();
//
}
TAG
правильно определен, не беспокойтесь там. Я продолжаю получать:
txtEA.getText().toString()
бросить исключение нулевой точки. У меня есть правильное R.id
значение, которое я проверил как 50 раз, я проверяю, что setContentView()
это прежде, чем я пытаюсь получить доступ, EditText
и две кнопки с setOnClickListener
отлично работает.
Я мог бы определенно использовать другой взгляд на это! Я копался в подобных вопросах и пробовал их решения, но ни один из них не решил мои!
Автор: Falcon165o Источник Размещён: 12.11.2019 09:20Ответы (2)
9 плюса
Вы должны сделать это:
final EditText txtEA = (EditText) dialog.findViewById(R.id.txtEmailAddress5);
Вы забыли поиск txtEA
в диалоге .
4 плюса
final EditText txtEA = (EditText) dialog.findViewById(R.id.txtEmailAddress5);
Вы должны позвонить findViewById
на dialog
.
Вопросы из категории :
- android Насколько хорошо отражает эмулятор Android Phone?
- android Как сохранить состояние активности Android с помощью сохранения состояния экземпляра?
- android Android: доступ к дочерним представлениям из ListView
- android Как вызвать SOAP веб-сервис на Android
- android Как вы форматируете дату и время в Android?
- android Android: Получение имени файла с камеры?
- android-layout Закрыть / скрыть программную клавиатуру Android
- android-layout Standard Android Button with a different color
- android-layout Как удалить строки между ListViews на Android?
- android-layout В чем разница между «px», «dip», «dp» и «sp»?
- android-layout Как расположить текст, чтобы обтекать изображение
- android-layout Можно ли подчеркнуть текст в макете Android?
- nullpointerexception Что такое исключение NullPointerException и как его исправить?
- nullpointerexception Избегать! = Нулевые заявления
- nullpointerexception NullPointerException при создании массива объектов
- nullpointerexception NullPointerException в Java без использования StackTrace
- nullpointerexception Почему статические поля не инициализируются во времени?
- nullpointerexception Нужна ли нулевая проверка перед вызовом instanceof?