首页 > 解决方案 > createMaterialTopTabNavigator 在一次导航后不导航

问题描述

当我为我的应用程序使用 createBottomTabNavigator 时,它在 iOS 和 Android 上都能完美运行。但是,当我将其更改为 createMaterialTopTabNavigator 时,它会在 Android 上单击选项卡后停止导航(iPhone 模拟器工作正常)。我仍然可以左右滑动到不同的标签,但标签栏不再重定向。该应用程序不会冻结,它响应良好,但不会发生重定向。如果我将其更改为 createBottomTabNavigator,它会再次正常工作。可能是什么问题?我在真正的安卓设备上测试过,还是一样。没有 tabBar 选项或其他任何东西。最奇怪的是,滑动仍然有效。

const JournalStack = createStackNavigator({
    Journal: JournalScreen,
    ActivityDetail: ActivityDetailsScreen,
})

const HomeStack = createStackNavigator({
    Home: HomeScreen,
})

const TasksStack = createStackNavigator({
    Tasks: TasksScreen,
})

export const MainTabs = createMaterialTopTabNavigator({
    Journal: JournalStack,
    Home: HomeStack,
    Tasks: TasksStack,
})

这是一个演示问题的小视频https://i.imgur.com/34gPrIJ.mp4

标签: androidreact-nativereact-navigation

解决方案


这是一个已知问题https://github.com/react-navigation/react-navigation/issues/5684,可以使用该问题中的步骤修复它,或者使用最新版本(alpha)的反应导航选项卡https: //github.com/react-navigation/react-navigation-tabs/releases/tag/v2.0.0-alpha.0。但是,您需要添加 reanimated 作为依赖项,但它是真正高性能动画的必备库,并修复了旧设备上的性能


推荐阅读