React Native Navigation:如何在模态上禁用后退按钮?

时间:2018-03-12 13:58:05

标签: react-native-navigation

我使用showModal()打开了登录模式。

它没有导航栏按钮,因此ios用户无法关闭此模式。

问题:实际上Android用户可以使用硬件返回按钮来关闭登录模式。

在我的登录模式中,我尝试添加

BackHandler.addEventListener('hardwareBackPress', function() { return true; }

禁止Android上的后退按钮,但它根本不起作用。

我这样做是因为我读了official RN guide后面的内容:

  

Android:检测硬件后退按钮,如果没有侦听器或者没有任何侦听器返回true,则以编程方式调用默认后退按钮功能以退出应用程序。

将console.log添加到此函数中我看到事件是在' normal'屏幕,但不是我的模态显示!

我做错了什么?

1 个答案:

答案 0 :(得分:3)

可以使用here

所述的overrideBackPress属性覆盖硬件后退按钮

您可以在组件中处理背压:

onNavigatorEvent(event) {
    if (event.id === 'backPress') {
        //Do your thing
    }
}