ReactNative安卓返回按键监听。

出现的问题,混合开发,新起一个Activity返回路由问题。会回退所有路由,才finishActivity.

在JS添加代码。

componentDidMount() {

 

var _this = this;

BackHandler.addEventListener('hardwareBackPress', this.onBackButtonPressAndroid)

}

componentWillUnmount() { 

if (Platform.OS === 'android') {

BackHandler.removeEventListener('hardwareBackPress', this.onBackButtonPressAndroid)

}

 

}

 

onBackButtonPressAndroid = () => {

console.log("返回");

let { navigation } = this.props;

if (navigation.isFocused()) {

 

// if (this.lastPressAndroidBack && this.lastPressAndroidBack + 2000 >= Date.now()) {

// return false

// }

// this.lastPressAndroidBack = Date.now();

// ToastAndroid.show('再按一次退出应用', ToastAndroid.SHORT);

// return true

 

//在这里调用原生方法结束Activity或者运用。

NativeModules.ActivityStarter.goBackFinishActivity();

// ToastAndroid.show('再按一次退出应用', ToastAndroid.SHORT);

return true

}

return false;

};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值