android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is yo

来源:互联网 发布:cr173破解软件 编辑:程序博客网 时间:2024/05/22 10:32

popUpWindow出现以上问题的原因是popUpWindow的弹出需要依附一个activity,所以需要在activity渲染完成之后弹出activity

解决方法一:使用handler延时显示,在handler中调用显示popUpWindow的方法

private Handler popupHandler = new Handler() {    @Override    public void handleMessage(Message msg) {        switch (msg.what) {            case 0:                remiderUserSign();                break;        }    }};

解决方法二:重写onWindowFocusChanged方法,在里面调用显示

@Overridepublic void onWindowFocusChanged(boolean hasFocus) {    super.onWindowFocusChanged(hasFocus);    if(hasFocus && !isRemiderUserSignShow){        isRemiderUserSignShow = true;        remiderUserSign();    }}
综上,还是推荐方法二,因为方法一不能彻底解决以上问题(在某些机型上面会报错误)

0 0
原创粉丝点击