有没有办法按下标签栏而不渲染组件屏幕?我一直在传递空函数,但它仍然呈现空白屏幕。我希望无论你按下它的哪个位置都停留在主屏幕上。
答案 0 :(得分:0)
您可以通过创建自定义 tabBar
组件来避免导航到屏幕,您可以在其中处理 onPress
到每个 tabBarComponent
,这样您就可以避免导航并执行一些操作。在此处仔细查看 react-navigation 文档中的示例:
https://reactnavigation.org/docs/bottom-tab-navigator/#tabbar
示例中的这行代码应该对您有所帮助:
const onPress = () => {
const event = navigation.emit({
type: 'tabPress',
target: route.key,
canPreventDefault: true,
});
if (!isFocused && !event.defaultPrevented) {
navigation.navigate(route.name);
}
};