用户在点击手机的返回按钮时,默认是推出当前的activty,但是有时用户不小心按到返回,所以需要给用户一个提示,这就需要重写onkeydown事件,实现的效果如下:
标签:
Android SDK
代码片段(2) [全屏查看所有代码]
2. [代码][Java]代码 跳至 [2] [全屏预览]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
@Override
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
protected
void
dialog() {
AlertDialog.Builder builder =
new
Builder(HanderTestActivty.
this
);
builder.setMessage(
"确定要退出吗?"
);
builder.setTitle(
"提示"
);
builder.setPositiveButton(
"确认"
,
new
android.content.DialogInterface.OnClickListener() {
@Override
public
void
onClick(DialogInterface dialog,
int
which) {
dialog.dismiss();
HanderTestActivty.
this
.finish();
}
});
builder.setNegativeButton(
"取消"
,
new
android.content.DialogInterface.OnClickListener() {
@Override
public
void
onClick(DialogInterface dialog,
int
which) {
dialog.dismiss();
}
});
builder.create().show();
}
@Override
public
boolean
onKeyDown(
int
keyCode, KeyEvent event) {
if
(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() ==
0
) {
dialog();
return
false
;
}
return
false
;
}
|
|
|
MainActivity如下:
main.xml如下: