android中返回键捕获处理

  在android平台上捕获Back键事件,主要用来处理返回的相关逻辑,下列几种方法都可以捕获,如下所示:

1、获取按钮按下事件,兼容android 1.0到android 2.1,重写onKeyDown()即可

 1 @Override
 2 public boolean onKeyDown(int keyCode, KeyEvent event)
 3 {
 4     if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0)
 5     {
 6         // your code
 7         return true;// true 事件不继续传递, false 事件继续传递
 8     }
 9     else
10     {
11         return super.onKeyDown(keyCode, event);
12     }
13 }

2、android 2.0后,捕获Back键的按下事件,重写onBackPressed()即可

1 @Override
2 public void onBackPressed()
3 {
4     // your code
5     return;
6 }

3、在dispatchKeyEvent()中捕获处理

 1 @Override
 2 public boolean dispatchKeyEvent(KeyEvent event)
 3 {
 4     if (event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_BACK)
 5     {
 6         // your code
 7         return true;
 8     }
 9     else
10     {
11         return super.dispatchKeyEvent(event);
12     }
13 }

时间: 2024-10-28 10:18:54

android中返回键捕获处理的相关文章

返回键捕获 应用程序退出的两种方式(转)

作为应用程序一个较好的用户体验应该是:在退出应用程序前询问用户是否真正退出?目前普遍做法是,一在退出前询问是否真正退出,二是连续按两下退出. 返回键捕获 应用程序退出的两种方式 实现上述两种应用退出方式需要在onkeyDown()来进行捕获返回键 在Activity中,如果需要动态注册广播官方文档建议在onResume()进行注册,在onPause()中取消注册.注册部分代码如下: 应用程序退出方式一:确认退出对话框 public boolean onKeyDown(int keyCode, K

Android按返回键(后退键)Back键事件捕获的两种方法

package zhangphil.back; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.view.KeyEvent; import android.os.Bundle; public class MainActivity extends ActionBarActivity { // 打印事件的标签 private final String TAG = "Phi

android中的键值对

hashmap,contentvalue,namevaluepair,jsonobject ArrayList和HashMap的区别:内部元素:ArrayList储存的是单个对象(此对象是可以通过设置对象类进而封装各种数据的),即ArrayList<user> al = new ArrayList<user>();    而HashMap储存的是一组一组的key和value,像:HashMap<int,String> hm = new HashMap<int,St

Android技术23:Android使用返回键退出实现

Android中通过双击返回键退出应用 在Android应用程序,经常可以通过双击返回键退出应用程序,例如QQ空间.下面将通过代码演示该过程. 1.设置退出标志符号 boolean isExist=false;默认为fasle 2.覆写onKeyDown()方法 监听Back键,当keyCode==KeyEvent.KEYCODE_BACK,则执行将isExist设置为ture,当第二次按back键时,应用程序退出,但两次时间间隔需要在一定时间内. 1 @Override 2 public bo

Android Activity返回键控制的两种方式

1.覆写Activity的OnBackPressed方法 官方解释: Called when the activity has detected the user's press of the back key. The default implementation simply finishes the current activity, but you can override this to do whatever you want. @Overridepublic void onBack

Android监视返回键

android在发展中,监视键返回到后事件经常被用来,在下面的例子来说明什么android返回键事件监听器. public class BackKeyTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCo

android 实现返回键执行home键方法

在公司的产品开发,中老板很是执着于,不要看到启动界面,但是又不想去掉启动界面. so 实现返回键执行home键方法. public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { Intent intent = new Intent(Intent.ACTION_MAIN); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

H5监听Android物理返回键

问题:H5页面的返回键可以回退到指定页面,但是Android手机的物理返回键会回到上一页. 解决办法:以下代码可以实现,Android返回键时调用H5的方法(下面代码中用的是H5的GoBackUrl方法),实现跳转到指定页面. //拦截安卓回退按钮,调用H5的返回方法 history.pushState(null, null, location.href); window.addEventListener('popstate', function (event) { history.pushSt

android双击返回键退出程序

@Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode == KeyEvent.KEYCODE_BACK) { ExitClick(); } return false; } private static Boolean isExit = false; private void ExitClick() { Timer tExit =