- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这样的结构:
底部Tab导航器:
当用户导航到屏幕 B,然后转到屏幕 1 并返回屏幕 2 时,他直接进入 B,如何使用 tabBarOnPress 函数重置堆栈以强制用户返回 A?
我使用的是react-navigation 3.0.9,我尝试了一些代码,但出现了错误,我认为这是由于版本所致。
我的代码结构:
const Navigator = createBottomTabNavigator({
Screen1: {
screen: Screen1,
navigationOptions: () => ({
tabBarOnPress...
})
},
Screen2: {
screen: Screen2,
navigationOptions: () => ({
tabBarOnPress...
})
}
})
最佳答案
在新版本中,您可以对屏幕使用unmountOnBlur选项。有一些代码示例:
<NavigationContainer>
<Tab.Navigator tabBarOptions={{
activeTintColor: ThemeConstants.mainColor,
}}>
<Tab.Screen name="Categories" component={CategoriesStackScreen}
options={{
unmountOnBlur:true
tabBarLabel: translate('Categories'),
tabBarIcon: ({color, size}) => (
<Icon style={[{color: color}]} type='MaterialIcons' name='restaurant-menu'/>
),
}}
/>
<Tab.Screen name="Info" component={InfoStackScreen}
options={{
unmountOnBlur:true,
tabBarLabel: translate('Info'),
tabBarIcon: ({color, size}) => (
<Icon style={[{color: color}]} type='MaterialIcons' name='info-outline'/>
),
}}
/>
<Tab.Screen name="Account" component={AccountStackScreen}
options={{
unmountOnBlur:true,
tabBarLabel: translate('Account'),
tabBarIcon: ({color, size}) => (
<Icon style={[{color: color}]} type='Feather' name='user'/>
),
}}/>
<Tab.Screen name="CartStackScreen" component={CartStackScreen}
options={{
unmountOnBlur:true,
tabBarBadge: (quantity && quantity>0)?quantity:null,
tabBarLabel: translate('Cart'),
tabBarIcon: ({color, size}) => (
<Icon style={[{color: color}]} type='Feather' name='shopping-cart'/>
),
}}
/>
</Tab.Navigator>
</NavigationContainer>
还有描述该属性的链接 https://reactnavigation.org/docs/bottom-tab-navigator/
关于react-native - 在 tabBarOnPress 上的 createBottomTabNavigator 内重置 StackNavigator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54260030/
预期的功能 我有一些带有 react-navigation 的嵌入式路线。 StackNavigator-1 -> TabNavigator-1 -> StackNavigator-2 -> TabN
我正在使用 React Navigation v5 和 @react-navigation/bottom-tabs我的标签看起来像这样。 我想在 上打开屏幕
我遇到了一个大问题,那就是当我点击选项卡时我想要 onPress 事件。 我的代码在这里:- static navigationOptions = ({navigation, screenProps}
我有这样的结构: 底部Tab导航器: 屏幕 1 屏幕 2 屏幕A 屏幕 B 当用户导航到屏幕 B,然后转到屏幕 1 并返回屏幕 2 时,他直接进入 B,如何使用 tabBarOnPress 函数重置堆
我有这样的结构: 底部Tab导航器: 屏幕 1 屏幕 2 屏幕A 屏幕 B 当用户导航到屏幕 B,然后转到屏幕 1 并返回屏幕 2 时,他直接进入 B,如何使用 tabBarOnPress 函数重置堆
我正在使用嵌套抽屉导航 > 选项卡 > 堆栈导航器。 导航器正在工作,但是当我点击选项卡项时,它会抛出以下错误 undefined is not an object (evaluating '_ref
我是一名优秀的程序员,十分优秀!