Dialog无法创建后无法显示的问题

我在项目中创建了一个diallog,但是却无法显示,郁闷了好久。代码如下所示

AlertDialog.Builder builder;
                    builder = new AlertDialog.Builder(UserManger.this)
                            .setTitle("退出确认")
                            .setMessage("您确定要退出吗?")
                            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialogInterface, int i) {
                                    BmobUser.logOut(UserManger.this);
                                    startActivity(new Intent(UserManger.this,
                                            LoginActivity.class));
                                }
                            }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialogInterface, int i) {

                                }
                            });
                    builder.create().show();

检查了好久,也没有显示出来,有的人说是因为没有create和show,但是我尝试之后还是不行,而且编译器报的错误也是莫名其妙的。后来,在网上偶然看见一句话,就把dialog放到异步进行加载了,果然,就可以显示出来了。

` private Handler dialogHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 0:
AlertDialog.Builder builder;
builder = new AlertDialog.Builder(UserManger.this)
.setTitle(“退出确认”)
.setMessage(“您确定要退出吗?”)
.setPositiveButton(“确定”, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
BmobUser.logOut(UserManger.this);
startActivity(new Intent(UserManger.this,
LoginActivity.class));
}
}).setNegativeButton(“取消”, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {

                            }
                        });
                builder.create().show();
                break;
        }
    }
};`

你可能感兴趣的:(Dialog无法创建后无法显示的问题)