React Native AndroidBack即使在' onPress'之后仍然退出应用程序。返回' true'

时间:2017-03-08 09:37:09

标签: javascript android react-native react-native-android

我正在开发我的第一个React Native应用程序,我希望实现一个功能,每当用户按下主页上的android后退按钮时,会弹出一个Alert并询问用户是否要退出应用程序。这可以工作到警报出现的位置,但最后,即使没有按下是按钮,它也会退出应用程序。

这是我的代码

BackAndroid.addEventListener('hardwareBackPress', () => {
      Alert.alert(
        'Quit App?',
        'Are you sure you want to exit App?',
        [
          {text: 'Yes', onPress: () => false},
          {text: 'No', onPress: () => true},
        ],
        { cancelable: true }
      )
});

正如所解释的那样,警报出现但不等待按下是或否按钮,它只是在几小时后退出应用程序。

提前感谢帮助

2 个答案:

答案 0 :(得分:2)

我这样做 -

BackAndroid.addEventListener('hardwareBackPress', () => {
  Alert.alert(
    'Quit App?',
    'Are you sure you want to exit App?',
    [
      {text: 'Yes', onPress: () => BackAndroid.exitApp()},
      {text: 'No', onPress: () => {}},
    ],
  );
  return true;
});

答案 1 :(得分:1)

您需要在监听器中返回true,以便通知您自己处理后退按钮的框架,并且不需要它(通过退出应用程序)。 警报之后只需return true

the docs中有一个简明的描述。