react-native 对android物理返回键back的监听以及基类封装

这个需求主要是为了解决android端物理返回键的监听的。

我们使用BackAndroid组件来完成对android物理返回键的监听。

我们可以在Home组件中注册,一旦APP进入Home页面,就接管物理返回键的监听,我们只在Home组件渲染完成后来监听,在Home组件被卸载后移除对返回键的监听,在onBackAndroid中,我们先检查navigator的堆栈,如果堆栈中有组件存在,则pop到最顶层组件,如果组件为空,则采取在2s内连续按两次返回键退出App的策略。

 

先看封装的代码:

/**
 * 所有组件的基类
 * 实现android端物理返回键的监听
 */
import React, {Component} from 'react';
import {
    BackAndroid,
    Platform,
} from 'react-native';

export default class BaseComponent extends Component {

    constructor(props) {
        super(props);
    }
    componentWillMount() {
        if (Platform.OS === 'android') {
            BackHandler.addEventListener("back", this.onBackClicked);
        }else {

        }
    }

    componentWillUnmount() {
        if (Platform.OS === 'android') {
            BackHandler.removeEventListener("bac
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值