Android 不断出现NullPointerException错误,can';我找不到地方

Android 不断出现NullPointerException错误,can';我找不到地方,android,string,nullpointerexception,double,android-alertdialog,Android,String,Nullpointerexception,Double,Android Alertdialog,我相信这确实是一个简单的解决方案,我只是没有看到。然而,我改变了一些特性(这似乎不相关),但是现在我得到了一个空指针异常错误,它只是没有让我在哪里可以找到它。如果有人能看看我的代码,帮我解决问题。我已经能够把它缩小到我代码的一个关键部分。 此代码触发警报对话框: tableRowShots = (TableRow)findViewById(R.id.shots_row); tableRowShots.setOnClickListener(new OnClickListener()

我相信这确实是一个简单的解决方案,我只是没有看到。然而,我改变了一些特性(这似乎不相关),但是现在我得到了一个空指针异常错误,它只是没有让我在哪里可以找到它。如果有人能看看我的代码,帮我解决问题。我已经能够把它缩小到我代码的一个关键部分。 此代码触发警报对话框:

    tableRowShots = (TableRow)findViewById(R.id.shots_row);
    tableRowShots.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            shotTextDialog().show();
            calculate();
      }

    });
以下是shotTextDialog()的代码:

下面是calculate()的代码:

NullPointerException错误似乎位于代码行附近:

shotsDouble = Double.valueOf(shots.getEditableText().toString());

有人能看到我缺少的东西吗?

我建议您使用
Log
类来调试应用程序。将呼叫添加到

Log.v("Activity name", "line number: #");

在Java文件的各个点上,运行应用程序,并检查logcat,以查看在抛出
NullPointerException
之前最后一个被调用的值。

只需检查your TextView
shots.getEditableText().toString()
值,要么它不是空的,要么它包含数字而不是其他字母

这有点像

 shotsDouble = Double.valueOf(shots.getText().toString().trim());  
还有一件事

public Editable getEditableText ()

返回TextView显示为可编辑对象的文本。如果文本不可编辑,则返回null。

似乎
getEditableText()
返回null

文件上说

public Editable getEditableText ()
返回TextView显示为可编辑对象的文本。如果文本不可编辑,则返回null。


所以只要试着用
getText()

替换它,如果(shots.getText().toString().length()>0)shotsDouble=Double.valueOf(shots.getText().toString());得到这样的值…在x线附近的某个地方?为什么不发布一个stacktrace,它会告诉您确切的行数..?活动的布局xml中是否定义了TextView、shots\u amount、powder\u amount等,您在哪里扩展该布局?请发布包含异常的logcat输出。检查此语句“TextView shots=(TextView)this.findViewById(R.id.shots_amount);”。只需在上面的日志中尝试shots.toString()以查看其是否为空。
public Editable getEditableText ()
public Editable getEditableText ()