NullPointerException при вызове EditText.getText()

358
08 мая 2017, 00:10
public void foodbuttonclick(View view) {
    final EditText foodtext;
    final TextView textView2;
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    textView2 = (TextView) view.findViewById(R.id.textView2);
    foodtext = (EditText) view.findViewById(R.id.input_text);
    builder.setTitle("Еда")
        .setMessage("Введите сумму:")
        .setCancelable(true)
        .setView(dialog_view)
        .setNegativeButton("Подтведрить",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    String foodstr = foodtext.getText().toString();
                    //String foodstr = (String.valueOf(foodint));
                    dialog.dismiss();
                    textView2.setText(foodstr);
                }
        });
        builder.show();
    }

NullPointerException Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference AndroidStudio пишет, что проблема com.example.andrew.moneysaver.MainActivity$2.onClick(MainActivity.java:94) в строке String foodstr = foodtext.getText().toString();

Answer 1

Вы не там его ищете:

    view.findViewById(R.id.input_text); 

- ведь view это кнопка, на которую нажали, а EditText видимо в dialog_view.

findViewById нужно вызывать у view, в которая содержит искомый элемент:

textView2 = (TextView) dialog_view.findViewById(R.id.textView2);
foodtext = (EditText) dialog_view.findViewById(R.id.input_text);
READ ALSO
Смена содержимого активити

Смена содержимого активити

Здравствуйте, возник такой вопросЕсть первая активити на ней listview, при нажатии на пункты, открывалась вторая активити, но чтобы не создавать...

311
Замена строки в файле нужным текстом

Замена строки в файле нужным текстом

Работаю в Android Studio, пишу на JavaИмеется файл, в который нужно записать информацию

283
Запись в файл что находится в папке raw

Запись в файл что находится в папке raw

Как я могу записать информацию в файл находящийся в папке raw?

296
Как поменять иконку маркера в Google maps?

Как поменять иконку маркера в Google maps?

я использую такой код, что бы поменять иконку маркера на карте, но получаю ошибку:

613