我可以为某些内容设置“通用”标题选项,例如将标题颜色设置为白色:
// example screens
const SettingsScreen = () => SettingsScreen...
const List = () => List...
const Item = () => Item...
// create an object to pass on to relevant screens
const navigationOptions = {
header: {
style: {
backgroundColor: '#fff'
}
},}
// MAIN SCREEN : a screen showing a list with ability to click on an list item and go to a detail page
// ============================
const ListScreens = StackNavigator({
List: { screen: List,navigationOptions: navigationOptions },//show a hamburger menu
Item: { screen: Item,// this is a detail page,so don not show a hamburger menu,rather show a back button
});
const SettingsContainer = StackNavigator({
Settings: { screen: SettingsScreen },});
// LOGGED IN DRAWER VIEW : top-level component is a drawer with two menu items (main and settings)
// ============================
const LoggedIn = DrawerNavigator({
Main: { screen: ListScreens },Settings: { screen: SettingsContainer },});
//... do stuff for root component
在DrawerNavigation菜单级别为所有路线添加汉堡菜单的最佳做法是什么?我想让这个流行音乐打开抽屉.没有访问props.navigation,除非我在每个组件内部……只是状态和参数.我是否需要复制每个文件中的代码?
static navigationOptions = {
title: ({ state }) => {
if (state.params.mode === 'info') {
return `${state.params.user}'s Contact Info`;
}
return `Chat with ${state.params.user}`;
},header: ({ state,setParams }) => {
// The navigation prop has functions like setParams,goBack,and navigate.
let right = (
title={`${state.params.user}'s info`}
onPress={() => setParams({ mode: 'info' })}
/>
);
if (state.params.mode === 'info') {
right = (
title="Done"
onPress={() => setParams({ mode: 'none' })}
/>
);
}
return { right };
},..
相关问题(可能):