react-native - React Native - 堆叠应用程序标题内容
问题描述
我正在尝试在使用该setOptions
方法设置的导航顶部栏中堆叠内容。但是,我似乎无法垂直堆叠两条内容。相反,我只能显示单个内容。请记住,此标题栏没有真正的导航链接,纯粹是一个带有文本和图像的“标题”栏。它也在我用来实际创建导航的同一个组件中createBottomTabNavigator()
。
我想要的是,伪视觉:
<Text><Image><Text>
<Text>
这是我的代码:
navigation.setOptions({
headerTitle: (
<Text
style={{
flex: 1,
flexDirection: 'row',
flexWrap: 'wrap',
}}
>
<Text
style={{
fontSize: 16,
lineHeight: 16,
}}
>
Left Text{' '}
</Text>
<Image
source={require('../assets/images/icon-large.png')}
style={{ resizeMode: 'contain', width: 25, height: 25 }}
/>
<Text
style={{
fontSize: 16,
lineHeight: 16,
}}
>
{' '}
Right Text
</Text>
</Text>
),
});
这给了我伪视觉:
<Text><Image><Text>
现在,我尝试了各种布局,<View>
但<Text>
似乎无法获得我正在寻找的堆叠视觉效果。我试过用 a<View>
和 last来包装它,<Text>
但我相信该headerTitle
属性需要一个<Text>
或类型的字符串分配给它。
有什么建议我可以<Text>
在我已经拥有的东西下面(和居中)得到另一个吗?
解决方案
结合这一点并将导航设置移动到Stack.Screen
我能够得到我想要的东西。我的问题似乎是我试图在BottomTabNavigator
. 相反,如果我传入一个自定义的“Header”组件,它会以我想要的方式呈现。像这样:
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen
name="Scroll Rack"
options={{ headerTitle: (props) => <Header /> }}
component={BottomTabNavigator}
/>
</Stack.Navigator>
</NavigationContainer>
推荐阅读
- html - 不检查用户授权:每个循环 Thymeleaf
- macos - Haskell噩梦卸载
- javascript - 将缓冲区直接上传到 Google Cloud Storage
- html - aria html元素有什么意义?
- google-colaboratory - 输入 Google Colab 的代码块时双输入
- php - 使用 vuejs 在 laravel 刀片视图中使用文件上传控件添加图像?
- function - 动态过滤器参数如何使用Query、importrange和indirect一起使用?或者可以完成任务的东西
- javascript - 有没有办法将算术运算符存储在变量中并在 JavaScript 的计算中使用变量本身?
- python - 单个“*”和“/”作为函数中的参数?
- javascript - 在 Vue 中保留 v-model 绑定的同时使用显示值