0

我正在 Android Studio 中开发一个应用程序,但是当我运行它时,我收到以下错误:

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference

我怎样才能解决这个问题?

4

2 回答 2

0

检查以下事情是否正确完成:

  1. 您的按钮出现在与 java 代码一起附加的适当 XML 布局中。像这样:

    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_text" />
    
  2. 检查此按钮是否已在您的 java 代码中声明和初始化。像这样:

    Button btn = findViewById(R.id.btn);
    
  3. 检查 onClickListner 是否正确设置为此按钮。像这样:

    btn.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            // Do something in response to button click here
            Toast.makeText(context, "button clicked!!!", duration).show();
        }
    });
    
于 2018-09-17T02:52:06.170 回答
-1

在设置监听器之前,请确保您的按钮视图已初始化(即 findViewById 或通过依赖注入)。

于 2018-09-16T12:20:03.983 回答