Android-再按一次返回键退出(TabHost实现方法)
2014-07-17 18:34
183 查看
普通Activity的实现方法是重写onKeyDown方法:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode == KeyEvent.KEYCODE_BACK){
if(System.currentTimeMillis() - exitTime > 2000){
Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
return false;
}
else{
finish();
}
}
return super.onKeyDown(keyCode, event);
}
而在一个存在TabHost的activity中,这个解决方法未能达到目的,具体该怎么做?
通过重写dispatchKeyEvent实现。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
if(event.getKeyCode() == KeyEvent.KEYCODE_BACK){
if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) {
Log.d("back",exitTime+"");
if(System.currentTimeMillis() - exitTime > 2000){
Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
return false;
}
else{
finish();
}
}
return true;
}
return super.dispatchKeyEvent(event);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode == KeyEvent.KEYCODE_BACK){
if(System.currentTimeMillis() - exitTime > 2000){
Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
return false;
}
else{
finish();
}
}
return super.onKeyDown(keyCode, event);
}
而在一个存在TabHost的activity中,这个解决方法未能达到目的,具体该怎么做?
通过重写dispatchKeyEvent实现。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
if(event.getKeyCode() == KeyEvent.KEYCODE_BACK){
if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) {
Log.d("back",exitTime+"");
if(System.currentTimeMillis() - exitTime > 2000){
Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
return false;
}
else{
finish();
}
}
return true;
}
return super.dispatchKeyEvent(event);
}
相关文章推荐
- Android中再按一次返回键退出程序的实现(返回桌面)两种方法
- Android中的“再按一次返回键退出程序”实现
- ANDROID 实现 再按一次返回键退出程序 代码片段
- Android中的“再按一次返回键退出程序”实现
- Android实现再按一次退出应用程序的方法
- Android双击返回键退出程序的实现方法
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中“再按一次退出程序”的实现方法
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- android两次返回键退出的一些实现方法
- Android “再按一次返回键退出程序”实现介绍
- ANDROID 实现 再按一次返回键退出程序 代码片段
- Android中“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中"再按一次返回键退出程序"的实现(返回桌面)
- Android中的“再按一次返回键退出程序”实现