我无法显示警报对话框.一切都是正确的,直到我设置方法dialog.show(),然后我无法打开我的应用程序.没有这种方法一切都很好.
我声明了两个全局对象:
AlertDialog.Builder builder;
AlertDialog dialog;
Run Code Online (Sandbox Code Playgroud)
然后在MainActivity中,我按构建器构建一个对话框并创建它.
builder = new AlertDialog.Builder(this.getApplicationContext());
builder.setMessage("We're sorry, but on Your device accelerometer isn't available")
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which)
{
MainActivity.this.finish();
}
});
dialog = builder.create();
Run Code Online (Sandbox Code Playgroud)
到目前为止一切正常并且没有任何异常,但是当我想显示对话框时,会出现一些异常,我无法运行此应用程序:
dialog.show(); //this method doesn't work and causes problems
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
编辑:例外:
06-26 20:49:03.540: D/dalvikvm(4085): GC_FOR_ALLOC freed 38K, 8% free 2499K/2712K, paused 42ms, total 45ms
06-26 20:49:03.580: I/dalvikvm-heap(4085): Grow heap (frag case) to 6.146MB for 3712016-byte allocation
06-26 20:49:03.700: D/dalvikvm(4085): GC_FOR_ALLOC freed …Run Code Online (Sandbox Code Playgroud)