android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@1ccfe

来源:互联网 发布:张逗张花家很富吗 知乎 编辑:程序博客网 时间:2024/06/08 04:31

在创建Dialog的时候,如下代码:

    public static Dialog getIKnowDialog(final Context context) {        AlertDialog.Builder builder = new AlertDialog.Builder(context);        builder.setMessage("现在没有处于WiFi联网状态")                .setCancelable(false)                .setNegativeButton("知道了",                        new DialogInterface.OnClickListener() {                            public void onClick(DialogInterface dialog, int id) {                                dialog.cancel();                            }                        });        AlertDialog alert = builder.create();        alert.setCancelable(false);        alert.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);        return alert;    }

在MainActivity中调用:

    Dialog iKnowDialog = getIKnowDialog(this);        iKnowDialog.show();

控制台可能就会打印标题的错误信息,这时候,在Manifest中添加一个权限

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

再试一下,问题就可能解决了!

0 0
原创粉丝点击