写一个程序遇见如下异常:
android.view.WindowManager$BadTokenException: Unable to add window
提示在创建AlertDialog.Builder是发生异常,大概意思就是说该AlertDialog 不能添加到窗口。
活动A跳转到活动B,在B中创建的AlertDialog
如果再由B跳转到A,如果在B中调用finish(),正常运行
而如果是在B中,按返回键,到A中,在启动活动B,这个时候便出现异常。
最后的解决方案
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK){
// MyLink.this.finish();
System.exit(0);
}
return true;
}
在活动B中捕获 点击返回键 事件 ,并强行调用 System.exit(0).