gpt4 book ai didi

javascript - React Native activeTintColor 未应用于选定的抽屉项目

转载 作者:数据小太阳 更新时间:2023-10-29 04:17:36 35 4
gpt4 key购买 nike

React Native activeTintColor 未应用于选定的抽屉项目。我的 react native 导航路线看起来像,

-> DrawerNavigator
-> StackNavigator
-> HomeScreen
-> FirstScreen
-> SecondScreen
-> ThirdScreen

routes.js

const RootStack = createStackNavigator(
{
Home: { screen: HomeScreen },
ChapterGroup: { screen: ChapterGroupScreen },
Chapter: { screen: ChapterScreen },
}

const DrawerStack = createDrawerNavigator(
{
Home: {
screen: RootStack,
params: { id: 1 }
},
Kural: { screen: ChapterGroupScreen, params: { id: 2 } },
Detail: { screen: ChapterGroupScreen, params: { id: 3 } }
}, { contentComponent: DrawerComponent}
}
export default DrawerStack;

我设法通过创建一个新的 DrawerComponent 在侧边栏上显示 First、Second、thirdScreens,它会在抽屉项目单击时导航到适当的堆栈屏幕。

DrawerComponent.js

resetStack = route => {
let pressedDrwaerItem = route.route.key;
let id = route.route.params.id;
this.props.navigation.dispatch(
StackActions.reset({
index: 1,
actions: [
NavigationActions.navigate({
routeName: "Home"
}),
NavigationActions.navigate({
routeName: "ChapterGroup",
params: { title: pressedDrwaerItem, no: id }
})
]
})
);
}

render() {
return (<ScrollView>
<DrawerItems
{...this.props}
onItemPress={this.resetStack}
</DrawerItems</ScrollView>)
}

它正确地导航到 Home 堆栈上的 ChapterGroup 屏幕,但抽屉事件项指向 Home 而不是第二个或第三个自定义名称。我认为这可能是因为所有其他屏幕都存在于 Rootstack 中。无论如何要手动将第二个抽屉项目设置为事件状态?

StackNavigatorDrawerNavigator 的任何成功实现? IE。我想使用堆栈导航器中的两个屏幕作为抽屉项目。如果我们从主屏幕导航到该特定屏幕,则应选择相应的抽屉项目。

最佳答案

不确定你是否尝试过 contentOptions,但这是我从 react-navigation 文档中找到的

contentOptions for DrawerItems

contentOptions 可以使用多种属性

contentOptions: {
activeTintColor: '#e91e63',
itemsContainerStyle: {
marginVertical: 0,
},
iconContainerStyle: {
opacity: 1
}
}

根据上面的代码片段,我猜 activeTineColor 可能对您有用。

关于javascript - React Native activeTintColor 未应用于选定的抽屉项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54642534/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com