android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@45a58ee0 is not valid; is your activity running?
看报错就知道是activity加载还没完成的原因。
后面用在onResume里还是不行,,原来onResume并不代表渲染加载完毕。
经过一番查找,和自己总结
解决办法 : activity里有一个onWindowFocusChanged(boolean hasFocus),,这个方法在屏幕获取到焦点的时候会调用
所以可以把pop的显示在这个方法里,不过要注意如果在显示中,获取其他时候关闭手机屏幕又打开,那肯定又会调用,
所以提议在显示的那里添加个if判断,给个变量
private int FocusMy=1;
@Override
public void onWindowFocusChanged(boolean hasFocus) {
if(hasFocus&&FocusMy==1){
FocusMy++;
pop.show("搜索中");
}
}
这样就可以有效避过了。
大家一起可以交流下,共同进步。安卓群号:513210053