Android(安卓)再按一次退出程序
方式一(Handler+标志位):
public class MainActivity extends Activity {
private boolean isExit;
private Handler handler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
handler = new Handler() {
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
isExit = false;
}
};
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (!isExit) {
isExit = true;
handler.sendEmptyMessageDelayed(0, 1500);
Toast.makeText(this, "再按一次退出程序", 1000).show();
return false;
} else {
finish();
}
}
return super.onKeyDown(keyCode, event);
}
}
方式二(记录点击的时间):
private long exitTimeMillis = System.currentTimeMillis();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_BACK){
long currentTime = System.currentTimeMillis();
if(currentTime-exitTimeMillis==0||currentTime-exitTimeMillis>1500){
exitTimeMillis = System.currentTimeMillis();
Toast.makeText(this, "再按一次退出程序", 1000).show();
return false;
}else{
finish();
}
}
return super.onKeyDown(keyCode, event);
}
更多相关文章
- android 全屏函数
- Android(安卓)使用Get方式实现断点下载(一)
- androi 添加桌面快捷方式
- Android再按一次退出软件
- Android(安卓)点击回退按钮时弹出提示框
- Android(安卓)Notification不显示时间
- Android(安卓)快捷方式
- Android获取UTC时间的方式
- Fragment传值到Fragment的操作步骤