我收到了市场上的应用程序出现错误,显示在对话框中的TextView中。该错误是对话框对象的Nullpointer异常
java.lang.NullPointerException
at com.b2creativedesigns.eyetest.ColorBlindTest1$2.onClick(ColorBlindTest1.java:324)
部分代码:
btnNext1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
GlobalVars.setPoints(points);
dialog = new Dialog(ColorBlindTest1.this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.cbtdialog);
TextView dialogtext = (TextView) dialog.findViewById (R.id.tvCBTresult);
TextView dialogtext2 = (TextView) dialog.findViewById (R.id.tvCBTresult2);
Button btnQuit = (Button) dialog.findViewById (R.id.btnCTBback);
Button btnFB = (Button) dialog.findViewById (R.id.btnCBTFB);
Button btnMarket = (Button) dialog.findViewById (R.id.btnCBTMarket);
if (points >= 14)
{
dialogtext.setText("Your result is " + points + "/15!");
dialogtext.setTextColor(Color.rgb(19, 20, 111));
dialogtext2.setText("Something"); //error line
}
...
我的问题是
是否好到申报的对象(如果TextView的)这里,局部和不在全球范围外
TextView dialogtext2;
并只写在这里dialogtext2 = (TextView) dialog.findViewById (R.id.tvCBTresult2);
?
我有4个密度为4的文件夹:layout-ldpi,layout-mdpi,layout-hdpi,layout-xhdpi。 layout-xhdpi文件夹中的xml不包含dialogtext2 TextView。这可能导致错误?当另一个密度文件夹中的相同xml中缺少一个对象时,android是否不应用另一个密度文件夹中的xml?
还有什么可以成为错误的根源?