Android下两次返回键完全退出程序以及提示对话框的实现

我们看到许多界面友好的应用,在退出程序这一步也做得很人性化,比如按两下返回键退出程序,第一次按了返回键的时候,提示“再按一次返回键就退出程序”,其实在自己的程序里面,也可以这样做。
	private long exitTime = 0; 
	@Override 
	public boolean onKeyDown(int keyCode, KeyEvent event) { 
		if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){ 
			if((System.currentTimeMillis()-exitTime) > 2000){ 
				Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show(); 
				exitTime = System.currentTimeMillis(); 
			} else { 
				finish(); 
				System.exit(0); 
			} 
			return true; 
		} 
		return super.onKeyDown(keyCode, event); 
	}
在MainActivity中加上以上代码:onKeyDown响应按键消息,keyCode是按键码,event是按键消息,封装了本次按键的动作;exitTime保存上一次按返回键的时间(long),如果这次按返回键的时间距上次的时间小于2S(long的2000),就退出,finish()是将activity完成,System.exit(0)是退出程序,主要要保证所有的activity都退出了,才调用exit,不然会有后台程序还在继续运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值