Android 返回按钮的自定义设置

程序中我们有时候想让放回按钮按照自己的需求调整页面而不是单纯的按照系统返回上一级,这个问题很简单,重写 onKeyDown 方法即可。

下面方法,包含了 webview 中的返回上一页和普通 Activity 的单击设置和双击退出程序:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
  //如果我们用的是webview页面,想返回网页的上一页设置这里就可以了
  if (keyCode == KeyEvent.KEYCODE_BACK && myWebView.canGoBack()) {
     myWebView.goBack();// 返回前一个页面
    return true;
  }

  //普通页面的单双击事件设置,这里是双击退出程序的设置。
  if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
    if ((System.currentTimeMillis() - exitTime) > 2000) {
      Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
      exitTime = System.currentTimeMillis();
    } else {
      finish();
      System.exit(0);
    }
    return true;
  }
  return super.onKeyDown(keyCode, event);
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,813评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,824评论 2 59
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,497评论 0 17
  • WebView·开车指南 2016-08-31BugDev 北京市东城区首席Bug布道师开山之作,一整月交通事故血...
    53c021c38a1d阅读 847评论 0 1
  • 这不是一篇讲述自己如何通过小白训练营而收获满满的文章,反而是反省在这14天的时间里自己是如何偷懒,从热情满满...
    Placid丶阅读 600评论 1 8