在listView的onItemClick函數中顯示一個AlertDialog,出現如下錯誤
- 08-07 21:26:43.506: ERROR/AndroidRuntime(9390): android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
後google解決。
原來代碼中顯示語句如下
- AlertDialog imageDialog = new AlertDialog.Builder(context).setTitle("狀態操作").setItems(items, listener).create();
- imageDialog.show();
其中context爲在OnCreate中
- context = getApplicationContext();
得到
異常原因:AlertDialog創建語句
- public AlertDialog.Builder (Context context)
中,不能使用getApplicationContext()得到的context,而必須使用Activity,所以解決如下
解決方法:語句修改爲
- AlertDialog imageDialog = new AlertDialog.Builder(Activity.this).setTitle("狀態操作").setItems(items, listener).create();
- imageDialog.show();
其中的Activity爲當前Activity的名稱
參考: