【问题标题】:react native: How do I catch the rest of the buttons that the user presses and bounce the modal?反应原生:我如何捕捉用户按下的其余按钮并反弹模态?
【发布时间】:2021-08-12 07:56:22
【问题描述】:

除了onBackPress,我怎样才能捕捉到屏幕上没有的其他事件? 我的目标是在用户按下 Android 后退按钮或其他不在屏幕上的按钮(如标题和选项卡)时反弹模式 如何捕捉用户按下和弹跳模式的其余按钮事件?

useFocusEffect(
    React.useCallback(() => {
      const onBackPress = () => {
          if (isnewArray != false ){ 
        setAlertModalVisiblity(true);
        return true
          }else{ 
            return false
          }
      };
      BackHandler.addEventListener(
        'hardwareBackPress', onBackPress
      );
      return () =>
        BackHandler.removeEventListener(
          'hardwareBackPress', onBackPress
        );
    }, [])
  );

【问题讨论】:

    标签: javascript reactjs react-native react-hooks dom-events


    【解决方案1】:

    您似乎在使用 react-navigation 库。
    我不确定我是否理解你的问题。但是,如果你想防止用户在有挂起的东西时返回屏幕,比如保存表单信息,你应该使用导航事件“beforeRemove”。它被称为总是按下android后退按钮,使用后退标题按钮或navigation.goBack()

    查看文档,他们有一个如何使用它的示例:
    https://reactnavigation.org/docs/5.x/preventing-going-back

    【讨论】:

      猜你喜欢
      • 2022-06-17
      • 1970-01-01
      • 2016-01-29
      • 1970-01-01
      • 2021-10-20
      • 2018-05-07
      • 2022-01-19
      • 1970-01-01
      • 2019-08-18
      相关资源
      最近更新 更多