java 我得到这个错误:尝试对空对象引用调用虚拟方法"android. view. View android. widget. Button. findViewById(int)"

ezykj2lf  于 2023-02-11  发布在  Java
关注(0)|答案(1)|浏览(144)

我是新的java和android,我得到这个错误:原因:java. lang.空指针异常:尝试对空对象引用调用虚拟方法"android. view. View android. widget. Button. findViewById(int)"
下面是我的www.example.com代码:MainActivity.java code:

package com.example.intentpassingoneactivitytoanother;
    import androidx.appcompat.app.AppCompatActivity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
    public class MainActivity extends AppCompatActivity {
       Button button;
        @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
          button.findViewById(R.id.btn);
      button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent=new Intent(MainActivity.this, SecondActivity.class);
            startActivity(intent);
       // Toast.makeText(MainActivity.this, "This is toast", Toast.LENGTH_SHORT).show();
    }
    });
    }
    }

下面是我的activity_main. xml代码:

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <Button
      android:id="@+id/btn"
      android:layout_gravity="center"
      android:layout_marginHorizontal="120dp"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="NextButton"/>
    </LinearLayout>
f0brbegy

f0brbegy1#

您试图在未初始化的情况下访问该按钮。
button.findViewById(R.id.btn)
应该是
button = findViewById(R.id.btn)
按钮在调用findViewById之前为null,因此异常提示尝试对空引用对象调用findViewById。
希望能有所帮助!

相关问题