Unable to add window -- token null is not for an application

来源:互联网 发布:网络黑白哪里买 编辑:程序博客网 时间:2024/06/05 05:35

代码中出现如下错误:

android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

分析:

问题在于new AlertDialog.Builder(Context),虽然这里的参数是AlertDialog.Builder(Context context)

但我们不能使用getApplicationContext()获得的Context,而必须使用Activity的Context对象,因为只有一个Activity才能添加一个窗体。  

解决方法:

将new AlertDialog.Builder(Context context)中的参数用Activity的Context对象即可

弹出确认框

    new AlertDialog.Builder(MainActivity.this).setTitle(R.string.confirm_title).setMessage(R.string.confirm_content).setPositiveButton(R.string.confirm_ok, new OnClickListener() {@Overridepublic void onClick(DialogInterface dialogInterface, int arg1) {dialogInterface.dismiss();masterClear(getApplicationContext());}}).setNegativeButton(R.string.confirm_cancel, new OnClickListener() {@Overridepublic void onClick(DialogInterface dialogInterface, int arg1) {dialogInterface.cancel();}}).show();



0 0