Android Studio-错误:应用程序在虚拟设备上崩溃

时间:2019-02-26 23:39:37

标签: android

因此,我是一位新程序员,并且也是该平台上的新手。我有一个问题。我尝试了所有喜欢看视频的内容,阅读了StackOverflow上的旧文章,但没有任何帮助。这就是为什么我想向您寻求帮助。

这是崩溃报告后的我的Logcat:

  

由于:java.lang.NullPointerException:尝试调用虚拟   方法“无效”   android.widget.Button.setOnClickListener(android.view.View $ OnClickListener)'   在空对象引用上           在de.S8S7.Spiel.onCreate(Spiel.java:32)

此时它显示错误:

btnAntwortEins.setOnClickListener(this);
btnAntwortZwei.setOnClickListener(this);
btnAntwortDrei.setOnClickListener(this);
btnAntwortVier.setOnClickListener(this);

是的,我不是说英语的人。

3 个答案:

答案 0 :(得分:0)

首先,您可以设置OnClickListeners,您必须像这样加载Button的实例:

btnAntwortEins = findViewById(R.id.btnIdAntwortEins);
btnAntwortZwei = findViewById(R.id.btnIdAntwortZwei);
btnAntwortDrei = findViewById(R.id.btnIdAntwortDrei);
btnAntwortVier = findViewById(R.id.btnIdAntwortVier);

btnAntwortEins.setOnClickListener(this);
btnAntwortZwei.setOnClickListener(this);
btnAntwortDrei.setOnClickListener(this);
btnAntwortVier.setOnClickListener(this);

您已在布局编辑器中的每个Button的ID字段中写入了ID(例如btnIdAntwortEins)。

答案 1 :(得分:0)

如果它仅在虚拟设备中崩溃,则可能是您在您的应用中使用了Google Play服务,并且您还没有安装具有Play Servivce功能的模拟器。尝试使用播放服务安装模拟器。

enter image description here

答案 2 :(得分:0)

如果您没有正确初始化android中的按钮,则可能会发生此类崩溃。因此,当您刚接触Android开发时,请在Activity中初始化按钮时考虑这些事情

您可以像以下这样全局提及按钮:

Button button;

您必须提供在xml中定义的参考ID,例如;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    githubRepoUrlRecyclerView = findViewById(R.id.button);

//mention on click listener after you have given the reference id.

button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //TODO task.
            }
        });