【问题标题】:React Native Navigation: how to disable backbutton on modals?React Native Navigation:如何禁用模式上的后退按钮?
【发布时间】:2018-03-12 13:58:05
【问题描述】:

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

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

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

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

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

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

我这样做是因为我阅读了official RN guide 上的以下内容:

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

将 console.log 添加到此函数中,我看到事件在“正常”屏幕上触发,但在显示模式时却没有!

我做错了什么?

【问题讨论】:

标签: react-native-navigation


【解决方案1】:

使用overrideBackPress 属性可以覆盖硬件后退按钮,如here 所述

您可以在组件中处理后按:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-03
    • 2019-05-14
    • 1970-01-01
    • 1970-01-01
    • 2017-11-30
    • 2023-02-01
    • 1970-01-01
    相关资源
    最近更新 更多