最近用android做了一个程序,在点“后退”的时候,会不停地后退,感觉不好。

查了些资料有这么些:

一、toast_plugin插件

<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script src="toast_plugin.js"></script>
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
  document.addEventListener("backbutton", eventBackButton, false); //返回键
}

function eventBackButton(){
window.plugins.toastPlugin.show_long('再点击一次退出!');
document.removeEventListener("backbutton", eventBackButton, false); //注销返回键
//3秒后重新注册
var intervalID = window.setInterval(
  function() {
    window.clearInterval(intervalID);
    document.addEventListener("backbutton", eventBackButton, false); //返回键
   },3000);

这个可是实现现在很多APP双击返回键退出程序的功能;

二、按返回键,弹退出确认框

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
document.addEventListener("backbutton", eventBackButton, false); //监听事件//
}
//事件处理
function eventBackButton(){
  showConfirm();
}
// PhoneGap Notification 提供的 Confirm API
function showConfirm() {
navigator.notification.confirm(
'按確定退出', // message
onConfirm, // callback function
'是否退出', // title
'确定,取消' // confirm 選項,用逗號隔開
);
} function onConfirm(button) {
   if (button === 1){
      navigator.app.exitApp();
   }
}

上面2个基本上都可以满足要求,不过还是感觉哪里不对劲。

有时候就是想要返回后退效果,结果也编程退出程序。

这时候就要添加个判断了,如下代码结合上面的方法就可以完美解决了!

document.addEventListener("backbutton",onBackKeyDown,false); 
function onBackKeyDown(){
  if($.mobile.activePage.is('#homepage'))
    navigator.app.exitApp();
  else
    navigator.app.backHistory();
}

最新文章

  1. Tensorflow 变量的共享
  2. UIView的setNeedsDisplay和setNeedsLayout
  3. 关于onethink的迁移站点产生数据库错误
  4. Android之下载管理者
  5. 【iOS】app的生命周期
  6. Android 编程下设置 Activity 切换动画
  7. yii2-获取配置选项的值
  8. OpenCV 图像处理学习笔记(一)
  9. 打造轻量级自动化测试框架WebZ
  10. Python之路【第二十篇】:待更新中.....
  11. hibernate的get、load的方法的区别,IllegalArgument异常
  12. MFC自定义消息
  13. silverlight 打印
  14. robot framework环境搭建和简单示例
  15. 设计模式C++达到 3.抽象工厂
  16. 4999: This Problem Is Too Simple!
  17. 【开源小软件 】Bing每日壁纸 让桌面壁纸保持更新
  18. [UE4]Set Skeletal Mesh,在蓝图中设置骨骼模型
  19. (Alpha)Let&#39;s-Chronos分数分配规则
  20. catkin地址

热门文章

  1. Niagara AX之BajaScript资料哪里找
  2. python中json的操作示例
  3. (原)ubuntu上安装dlib
  4. mysql函数全解析
  5. djangoPOST请求403 forbidden
  6. HtmlAttribute HTML属性处理类
  7. CSS之Hack
  8. Css 小技巧总结
  9. 使用jquery获取网页中图片的高度——解惑
  10. nc命令 (NetCat)