原文发表于我的技术博客

本文分享了 Ionic2 下处理 Android 设备下返回按钮的事件,供参考。

原文发表于我的技术博客

代码中我分享了如何捕捉 Ionic2 项目在 Android 设备下返回按钮事件,并在捕捉到的事件中可以灵活根据需求编写相关业务逻辑,如退出、返回等。

详细的逻辑处理参见下面代码即可。

{% codeblock lang:js%}

import {Component} from '@angular/core';

import {Platform, ionicBootstrap} from 'ionic-angular';

import {StatusBar} from 'ionic-native';

import {TabsPage} from './pages/tabs/tabs';

import {App, NavController} from 'ionic-angular';

import {ViewChild} from '@angular/core';

@Component({

template: '<ion-nav #rootNavController [root]="rootPage" #content swipe-back-enabled="false">'

})

export class MyApp {

@ViewChild('rootNavController') nav: NavController;

private rootPage: any;

constructor(private platform: Platform) {

this.rootPage = TabsPage;

platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
StatusBar.styleDefault();
//退出按钮重写******开始******
document.addEventListener('backbutton', () => {
let activeVC = this.nav.getActive();
let page = activeVC.instance; if (!(page instanceof TabsPage)) {
if (!this.nav.canGoBack()) {
console.log('检测到在根视图点击了返回按钮。');
return platform.exitApp();
}
console.log('检测到在子路径中点击了返回按钮。');
return this.nav.pop();
} let tabs = page.tabs;
let activeNav = tabs.getSelected(); if (!activeNav.canGoBack()) {
console.log('检测到在 tab 页面的顶层点击了返回按钮。');
return platform.exitApp();
} console.log('检测到当前 tab 弹出层的情况下点击了返回按钮。');
return activeNav.pop(); }, false); //退出按钮重写******结束******
});

}

}

ionicBootstrap(MyApp);

{% endcodeblock %}

Ionic2 下处理 Android 设备下返回按钮的事件的更多相关文章

  1. python Windows下的android设备截图工具

    目录 界面版 命令行版 界面版 利用python的wx库写个ui界面,用来把android设备的截图输出到电脑屏幕,前提需要安装adb,涉及到的python库也要安装.代码如下: #!/usr/bin ...

  2. Python写一个Windows下的android设备截图工具

    界面版 利用python的wx库写个ui界面,用来把android设备的截图输出到电脑屏幕,前提需要安装adb,涉及到的python库也要安装.代码如下: import wx,subprocess,o ...

  3. 三分钟彻底禁用、隐藏Android设备底部虚拟按钮(亲测有效)

       转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7613970.html Android设备屏幕底部一般都有虚拟导航栏,上面有 back.home等按钮. ...

  4. android toolbar 显示返回按钮并改变按钮颜色

    <android.support.design.widget.AppBarLayout android:id="@+id/about_appbar" android:layo ...

  5. 重写系统中的UINavigationController 返回按钮的事件

    .扩展UIviewController UIViewController+BackButtonHandler.h #import <UIKit/UIKit.h> @protocol Bac ...

  6. 重写系统中的UINavigationController返回按钮的事件

    1.扩展UIviewController UIViewController+BackButtonHandler.h #import <UIKit/UIKit.h> @protocol Ba ...

  7. 从网页监听Android设备的返回键

    最近搞Android项目的时候,遇到一个比较蛋疼的需求,需要从Client App调用系统浏览器打开一个页面,进行杂七杂八的一些交互之后,返回到App.如何打开浏览器和如何返回App这里就不说了,有兴 ...

  8. Ubuntu Linux14 64位下在Android studio下用gradle编译Andrid项目时发生libz.so.1共享库找不到的解决方法。

    ---恢复内容开始--- 我在Ubuntu14 64为下安装了AS,但在用Gradle编译项目时总是报找不到 libz.so.1的错误. error while loading shared libr ...

  9. Android设备 cocos2dx 骨骼动画注册事件播放音效,退到后台再返回黑屏问题

    最近遇到一个cocos2dx 骨骼动画注册事件播放音效,在骨骼动画播放的时候,按HOME键退到桌面,再次打开游戏的时候,会黑屏. 解决办法如下,可能不是太完美,至少解决了大部分问题. 1.在org.c ...

随机推荐

  1. python曲线拟合

    http://blog.sina.com.cn/s/blog_aed5bd1d0102vid7.html 1.多项式拟合范例: import matplotlib.pyplot as plt impo ...

  2. parallels Desktop解决无法压缩硬盘的问题

    使用pd12新建的win7虚拟机仅仅使用了四十个G,但在本地硬盘中的体现却是占用了一百左右:尝试压缩提示: 无法编辑硬盘属性,因为该硬盘有一个或多个快照. 该硬盘属于某一带有一个或多个快照的虚拟机.请 ...

  3. ES5数组的遍历方式

    /* 遍历数组 */ var arr=[1,2,3,43,55,66,77,99]; /* 遍历数组 function(item,index) */ arr.forEach(function(item ...

  4. Python3.6安装及引入Requests库

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  5. 【WebLogic】weblogic调优

    版权声明:本文为博主原创文章(原文:blog.csdn.net/clark_xu 徐长亮的专栏),未经博主同意不得转载. https://blog.csdn.net/u011538954/articl ...

  6. python re模块记录

    import re'''re模块 compile    match search findall    group groups 正则表达式常用格式: 字符:\d \w \t  . (\d:数字;\w ...

  7. centos断网调试

    保存命令 按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi:w file 将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi:wq 保存文件并退出vi:wq! 强制保存文件 ...

  8. DamonOehlman/detect-browser

    https://github.com/DamonOehlman/detect-browser detect-browser This is a package that attempts to det ...

  9. 深入浅出的webpack构建工具---babel之配置文件.babelrc(三)

    阅读目录 一:理解 babel之配置文件.babelrc 基本配置项 二:在webpack中配置babel 回到顶部 一:理解 babel之配置文件.babelrc 基本配置项 1. 什么是babel ...

  10. PAT A1140 Look-and-say Sequence (20 分)——数学题

    Look-and-say sequence is a sequence of integers as the following: D, D1, D111, D113, D11231, D112213 ...