gpt4 book ai didi

reactjs - 如何禁用某些屏幕中的android后退按钮

转载 作者:行者123 更新时间:2023-12-04 14:29:15 26 4
gpt4 key购买 nike

我想仅在某些页面中禁用 android 后退按钮。我使用了以下代码:

  componentWillUnmount(){
//For disabling the back button on cellphone
BackHandler.removeEventListener('hardwareBackPress', this.handleBackButton);
}
componentWillMount() {
ParkToolbar.init( this );
}

//For disabling the back button on cellphone
handleBackButton() {
ToastAndroid.show('you cannot return', ToastAndroid.SHORT);
return true;
}

componentDidMount() {
toolbarActiveItem = this.state.user;
ParkToolbar.setActiveItem(this.props.navigation.state.params.activeSection);

//For disabling the back button on cellphone
BackHandler.addEventListener('hardwareBackPress', this.handleBackButton);
}

问题是,当我在程序的一个页面(屏幕)中使用代码时,后退按钮将在我的应用程序的每个部分的所有页面(屏幕)中禁用。您是否知道如何以仅禁用单个页面(屏幕)的后退按钮的方式管理它?

更新:
我还用 BackAndroid 测试了代码,也出现了同样的问题。

最佳答案

要禁用 Android 设备后退按钮,您可以这样做,它会处理后退按钮,只需在您的各个事件中添加这些方法:-

import { BackHandler } from 'react-native';

constructor(props) {
super(props)
}

componentWillMount() {
BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick);
}

componentWillUnmount() {
BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick);
}

handleBackButtonClick = () => {
this.props.navigation.goBack(null);
return true;
};

关于reactjs - 如何禁用某些屏幕中的android后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47636401/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com