AlertDialog.Builder builder = new Builder(this);
builder.create().show();
这样显示出来的对话框,当用户按返回键或搜索键时,这个对话框也能关闭。
怎样才能实现一个类似在windows系统上的对话框,必须点对话框上的按钮后,才能关闭这个对话框。
下面是具体代码:
AlertDialog.Builder builder = new Builder(this);
builder.setMessage(msg); builder.setTitle(title);builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) { dialog.dismiss();}
});AlertDialog alertDialog = builder.create();
alertDialog.setCancelable(false);//设置这个对话框不能被用户按[返回键]而取消掉,但测试发现如果用户按了KeyEvent.KEYCODE_SEARCH,对话框还是会Dismiss掉
//由于设置alertDialog.setCancelable(false); 发现如果用户按了KeyEvent.KEYCODE_SEARCH,对话框还是会Dismiss掉,这里的setOnKeyListener作用就是屏蔽用户按下KeyEvent.KEYCODE_SEARCH alertDialog.setOnKeyListener(new DialogInterface.OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_SEARCH) { return true; } else { return false; //默认返回 false } } });alertDialog.show();
2012-01-03
名品推荐: