如何使导航栏(标题)颜色与反应导航中的主体相同?

问题描述 投票:0回答:1

我是React Native的新手,想知道是否有办法让导航栏的背景颜色与身体的背景颜色相同?

我知道通过硬编码值来改变背景颜色的以下方法,但有没有办法访问正文的背景颜色,然后设置导航标题的背景颜色?

defaultNavigationOptions: {
title: 'Home',
headerStyle: {
  backgroundColor: 'white', // don't want to hardcode a value
}, ... 

即。在backgroundColor设置中,而不是'white',我怎样才能将它替换为容器/ App的backgroundColor?在下面的图片中,我希望白色标题与蓝色相同(没有硬编码蓝色的值,因为在我的应用程序中,身体的颜色根据天气变化等)

(在我的应用程序的其他部分,我通过做这样的事情动态地改变背景颜色:)

... backgroundColor: weather[this.state.weather].backgroundColor

不幸的是,当我在qazxsw poi中尝试时,这不起作用

defaultNavigationOptions

react-native react-navigation
1个回答
0
投票

我有类似的问题。我做的是摆脱反应导航的顶部栏。把它放在构造函数之后:

enter image description here

然后我为顶部栏添加了我自己的组件,您可以轻松控制哪种颜色。只是以一种观点来做,就这么简单!剩下的是状态栏(小空间保持时间,电池寿命等)。您可以将其作为组件提及(请记住先导入它),或者只需在导入后调用set color方法即可。我这样做的方式:

  static navigationOptions = {
    header: null
  };

但这也是可能的:|

<StatusBar  backgroundColor="#7e7e7e" barStyle="light-content" />
© www.soinside.com 2019 - 2024. All rights reserved.