您好,我是 android 的新开发人员,我是一名培训师,我正在尝试创建一个警告框。
在我的项目中,我放置了 2 个编辑文本框,如果其中任何一个为空,我想弹出一个警告框,如果两个框都已填满,它将移至新页面。
下面是我的代码
{ b = (Button)findViewById(R.id.widget30);
et1 = (EditText)findViewById(R.id.et1);
et2 = (EditText)findViewById(R.id.et2);
b.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
if(et1.getText().toString().length() == 0 )
{
et.setVisibility(View.VISIBLE);
alertbox();
}
else if (et2.getText().toString().length() == 0)
{
et.setVisibility(View.VISIBLE);
alertbox();
}
else
{
main.this.finish();
Intent myIntent = new Intent(v.getContext(), T.class);
startActivityForResult(myIntent, 0);
}
}
});
}
public void alertbox()
{
et = new TextView(this);
Builder alert =new AlertDialog.Builder(main.this);
alert.setTitle("Alert");
alert.setMessage("Required all fields");
alert.setView(et);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int whichButton)
{
dialog.cancel();
}
});
AlertDialog alert1 = alert.create();
alert1.show();
}
}
它正在移动到一个新页面,但警告框没有打开,以下是 logcat 中的错误
java.lang.NullPointerException
在我的代码行中
{
if(et1.getText().toString().length() == 0 )
{
et.setVisibility(View.VISIBLE);
alertbox();
}
else if (et2.getText().toString().length() == 0)
{
et.setVisibility(View.VISIBLE);
alertbox();
}
}
}
请帮我找出我做错了什么
最佳答案
大概在这条线上
et.setVisibility(View.VISIBLE);
et
是一个 null
对象,因为它不存在。它仅在您调用 alertbox() 之后创建您的接缝
关于java - 在android中创建alertbox时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5368919/