今天发现点击键盘返回键的时候,程序并没有结束,因为线程还在跑,还在向服务器上传数据。
于是找了一下,其实这个好像以前也用过的,忘了。
还有new AlertDialog.Builder(this).create().show()的用法
以及之间自己定义的dialog,就是弹出 对话列表框的那个程序,其实那个 dialog也没有弄明白,只是看别人这么写的而已。
//捕捉键盘返回键退出 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK ) { new AlertDialog.Builder(this) .setTitle("退出程序") .setMessage("是否要退出?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { onDestroy(); } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).create().show(); } return super.onKeyDown(keyCode, event); } @Override protected void onDestroy() { super.onDestroy(); System.exit(0); }
调用 onDestroy()彻底返回程序,我这里没有涉及到很多个acvity的情况,有时候可能按返回键需要返回上一个activity,而不是彻底的返回程序呢?遇到了再研究吧。
世上无难事,只怕有心人,不要对自己不自信,什么事情都是可能的。