【发布时间】:2011-03-14 22:26:08
【问题描述】:
我的 Activity 中有按钮,我想在单击按钮时显示 AlertDialog:
@Override
public void onClick(View view) {
case R.id.btnDetailedCall:
final String[] phoneArray=ad.getPhone().split(" ");
if(phoneArray.length>1){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("Title");
builder.setSingleChoiceItems(phoneArray, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
selectedPhone=phoneArray[which];
}
});
AlertDialog dialog=builder.create();
dialog.show();
}
当我将“this”传递给 AlertDialog 构造函数时,代码运行正常,但对话框没有出现在屏幕上。我认为“this”在这里不是正确的参考,所以我尝试了 getBaseContext() 并得到了WindowManager$BadTockenException: Unable to add window -- tocken null is not for an application
将不胜感激任何帮助,谢谢。
【问题讨论】:
-
this为我工作。您是否检查过其他事情是否按预期工作? -
如果你删除 builder.setSingleChoiceItems(...) 它会显示吗?
标签: android