android 自定义 返回键监听,react-native监听android物理返回键

1.使用BackAndroid组件来完成对android物理返回键的监听

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

1c5ed23a13f4

2. 某些类自定义返回键操作(即点击返回键弹出一个alert之类的操作)

在所需类的初始化方法里调用BackAndroidTool.customHandleBack

栗子:

constructor(props) {

super(props);

BackAndroidTool.customHandleBack(this.props.navigator,() => {

Alert.alert('提示','您还未保存记录,确定要返回么?',

[{text:'取消',onPress:() => {}},

{text:'确定',onPress:() => { this.props.navigator.pop(); }}

]);

// 一定要 return true; 原因上面的参考链接里有

return true;

});

}

3.某些页面需要禁用返回键

在nav进行push的时候,设置属性ignoreBack为true 即可

this.props.navigator.push({

component: 所需要禁用的类,

ignoreBack:true,

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值