我试图在用户点击按钮时显示警告对话框
Previous.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AlertDialog.Builder answerAlert = new AlertDialog.Builder(this);
}
});
但我在这一行中出错了
AlertDialog.Builder answerAlert = new AlertDialog.Builder(this);
其中说
The constructor AlertDialog.Builder(new View.OnClickListener(){}) is undefined
谁知道如何修复它?
感谢
答案 0 :(得分:0)
this
是您的匿名OnClickListener内部类。请改用MyActivity.this
(将MyActivity替换为活动名称)。
答案 1 :(得分:0)
AlertDialog
获取Context
中的Constructor
,但您在onClickListenner中使用了this
。相反,你应该写YourActivity.this
Previous.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AlertDialog.Builder answerAlert = new AlertDialog.Builder(YourActivity.this);
}
});
答案 2 :(得分:0)
您必须将Context
的对象传递给AlertDialog.Builder
构造函数,而View.OnClickListener
不会延伸Context
更改
AlertDialog.Builder answerAlert = new AlertDialog.Builder(this);
到
AlertDialog.Builder answerAlert = new AlertDialog.Builder(YourActivity.this);
Activity
扩展Context
答案 3 :(得分:0)
在您的代码中this
是您的View.OnClickListener
接口实现。
试试这个:
AlertDialog.Builder answerAlert = new AlertDialog.Builder(YourActivity.this);
YourActivity
是您的活动名称