react-native - 反应导航 - 在屏幕视图中呈现自定义标题
问题描述
使用 React Navigation,我想header
使用navigationOptions
.
问题是标题呈现在屏幕视图之外。在我的情况下,我希望它成为屏幕的一部分ScrollView
,并与屏幕一起向上滚动(不要停留在顶部)。
我尝试设置header
为null
in navigationOptions
,并手动将标题组件放入屏幕的ScrollView
中,但是这样我无法访问headerProps
在使用header
选项时传递给标题组件的那些。这些headerProps
是访问前一个场景等内容所必需的。
有什么解决办法吗?
解决方案
你可以这样做:
- 从react-navigation隐藏标题并将标题添加到 ScrollView 内的屏幕组件中:
const SignedOut = createStackNavigator({ SignIn: { screen: SignIn, navigationOptions: { header: () => null, }, }, });
SignIn screen
:class SignIn extends React.Component<Props, State> { render() { return ( <ScrollView style={styles.container}> <! -- add header for screen and content --> </ScrollView> ) } } export default SignIn;
通过这种方式,您可以在 ScrollView 中呈现自定义标题组件。
推荐阅读
- python - 列出所有可能的 pandas 数据框值组合以达到某个总和
- ios - 防止 sizeForItemAt 因重复使用动态 collectionView 单元格而使用错误的单元格大小
- azure - 为什么我的 powershell DSC 失败并显示消息“已添加具有相同密钥的项目”
- html - 在移动设备上放大时出现 Div 滚动问题
- java - JUnit:在多个目标类上运行相同的测试
- python - 在 Python3.7 中匹配用户的输入与嵌套字典
- email - 基于条件字段的电子邮件保存搜索
- node.js - MongoDB 在 find 函数中返回所有结果
- buildroot - 如何将二进制文件添加到 buildroot 生成的图像?
- php - Codeigniter 3 - sess_time_to_update 和 sess_save_path