【问题标题】:React native navigation stack navigator header not fixed at top for web反应本机导航堆栈导航器标题未固定在网络顶部
【发布时间】:2021-08-04 20:12:18
【问题描述】:
【问题讨论】:
标签:
react-native
react-native-navigation
react-native-web
【解决方案1】:
我在 Expo React Native for Web 上尝试使用 React Navigation 5 呈现自定义标题组件时遇到了类似的问题。我能够通过像这样将定位设置为“固定”来解决问题。这应该适用于使用自定义标头组件,但我不确定您是否可以为默认标头组件应用相同的解决方案。
在堆栈/屏幕配置中
// ...
<Stack.Screen
name="Home"
component={HomeScreen}
options={{
header: () => <MyCustomHeader />
}}
/>
在RN5要渲染的Custom Header Component中
// ...
const MyCustomHeader = ({ title }) => {
return (
<View style={styles.headerContainer}>
<Text>{title}</Text>
</View>
);
}
const styles = {
headerContainer: {
...Platform.select({
web: {
position: "fixed"
}
}),
height: 60,
width: '100%',
}
}
【解决方案2】:
最终找到了更好的解决方案(RNN设计的方式):
cardStyle: { flex: 1 } in screenOptions
也可以。