onsen中的默认是当按下设备后置时的应用程序关闭/退出。是否有任何方法可以控制在onsen中也模仿Ons-Navigator操作/页面历史记录?

谢谢!

有帮助吗?

解决方案

如果在PhoneGap / Cordova的情况下,按下BackButton时会触发BackButton事件。 因此,您可以设置eventHandler s.t.

document.addEventListener("backbutton", onBackKeyDown, false);
.

在eventHandler函数中,您可以通过获取Navigator Scope S.T来调用Navigator的Poppage方法。

function onBackKeyDown() {
    // Handle the back button
    alert("Backbutton is pressed!");
    var element = document.querySelector( ".navigator-container");
    var scope = angular.element( element ).scope();
    scope.popPage();
}
.

如果您使用摩纳哥,基于Cordova的混合应用框架,BackButton事件 没有被解雇。相反,您可以使用的.ui文件,其中restbutton事件是定义的。

{
    "event" : {
        "onTapBackButton" : "onBackKeyDown();"
    }
}
.

其他提示

无需处理BackButton事件以防止申请被杀死。 onsen-ui在v1.1.1的Ons-Navigator和Ons-Sliding-Menu上添加了对Android Back-Button的支持。

您可以检查此处

您可以使用“ disaverevicebackbutton handler ”控制它,然后在 ons.ready 事件之后。在此之后添加一个事件侦听器,供回按钮,并执行任何您想要的任何操作。

ons.ready(function() {
  ons.disableDeviceBackButtonHandler();

  // Use Cordova handler
  window.document.addEventListener('backbutton', function() {
    // Handle backbutton event
  }, false);
});
.

只需检查本文: https://onsen.io/guide/overview.html#handlingbackbutton

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top