AlertDialog = new AlertDialog.builder(this)得到类型转换错误

时间:2016-04-29 06:58:56

标签: android dialog

当我创建AlertDialog类对象然后通过新的AlertDialog.builder(this)比它给我跟随下面的屏幕截图所示的错误时,如果我使用构建器对象而不是cancel()函数不起作用并且给我强制关闭错误在模拟器中

When I create AlertDialog class object and then by new AlertDialog.builder(this) than it gives me following error shown in screen shot below, If I use builder object than cancel() function does not work and give me force close error in emulator

6 个答案:

答案 0 :(得分:3)

请改变,

AlertDialog alertDialog = new AlertDialog.Builder(this).create();

因为AlertDialog ist AlertDialog.Builder()。您可以在下面找到创建AlertDialog的完整示例:

AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);  
alertDialog.setTitle("Alert 1");  
alertDialog.setMessage("This is an alert");  
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {  
    public void onClick(DialogInterface dialog, int which) {  
        return;  
    } 
});  

AlertDialog alert = alertDialog.create();
alert.show();

答案 1 :(得分:0)

使用

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); 

代替。

答案 2 :(得分:0)

AlertDialog 存在于两个类中:android.app.AlertDialog, android.support.v7.app.AlertDialog。请确保您在班级中使用相同的 AlertDialog

答案 3 :(得分:0)

您正在使用 AlertDialog 而不是 AlertDialog.Builder 。该错误(即,mainContentScreen:无法从AlertDialog.Builder转换为AlertDialog)清楚地显示您在哪里犯了错误。请仔细阅读错误。

答案 4 :(得分:0)

尝试此更改:

public List<?> execute(String name, Map<String, Object> params,   List<?> type) {

}

并参考此链接   :http://developer.android.com/guide/topics/ui/dialogs.html

答案 5 :(得分:0)

下面应该有效

AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);