WindowManager$BadTokenException

具体错误:

    android.view.WindowManager$BadTokenException:Unable to add window - token android.view.ViewRoot$W@47ff8b70 is not valid;is your actvity runing?

    1.从一个activity跳转到另一个activity时,自动弹出popwindow,出现了此类错误。原因是window在oncreate方法中还没创建完毕,而打开popwindow需要用到其他参照UI的对象,所以有可能报错。

    规避方法:

    //设置一个延时,时间需要自己大概估量

    new Handler().postDelayed(new Runnable()

    {

    @Override

    public void run()

    {

    mPopupMenu.showAtLocation(findViewById(R.id.main_layout), Gravity.BOTTOM, 0, 0);

    }

    }, 500);

    本文出自 “天空没有痕迹但我飞过” 博客,转载请与作者联系!

原文地址:https://www.cnblogs.com/Android-FJH/p/5570881.html