具体错误:
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的对象,所以有可能报错。
规避方法:
1
2
3
4
5
6
7
8
9
|
//设置一个延时,时间需要自己大概估量 new Handler().postDelayed( new Runnable()
{ @Override
public void run()
{
mPopupMenu.showAtLocation(findViewById(R.id.main_layout), Gravity.BOTTOM, 0 , 0 );
}
}, 500 );
|
本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1306012,如需转载请自行联系原作者