javascript - react native : How to set background color for the whole app and individual scene in react-native-router-flux?

标签 javascript reactjs react-native react-native-router-flux

在使用 react-native-router-flux 的 React Native 中,如何为整个应用程序和单个场景设置背景颜色?

这是我目前的设置:

const RouterWithRedux = connect()(Router)
const store = configureStore()

export default class App extends Component {
  render() {
    return (
      <Provider store={store}>
        <RouterWithRedux>
          <Scene key='root'>
            <Scene initial={true} key='login' component={Login} title='Login Page'/>
            <Scene key='register' component={Register} title='Register'/>
          </Scene>
        </RouterWithRedux>
      </Provider>
    )
  }
}

谢谢

最佳答案

API documentation ,您可以在 RouterScene 上使用 sceneStylegetSceneStyle(仅 getSceneStyle对于 Router 虽然)。

编辑

Router 中你只能使用 getSceneStyle 并且你必须传递一个函数:

// ..
const getSceneStyle = (/* NavigationSceneRendererProps */ props, computedProps) => {
  const style = {
    backgroundColor: 'blue',
  };
  return style;
};
// ..
<Router getSceneStyle={getSceneStyle} {...otherProps}>
// ..

对于您的 Scene,您可以将一个对象或 StyleSheet 对象传递给 sceneStyle 或使用 getSceneStyle (确保你传递了一个像上面那样的函数):

<Scene
  key="my-scene"
  component={MyScene}
  sceneStyle={{
    backgroundColor: 'red',
  }}
  title="My Scene"  />

这将覆盖蓝色背景。

关于javascript - react native : How to set background color for the whole app and individual scene in react-native-router-flux?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39606460/

相关文章:

android - XML 错误 : error: not well-formed (invalid token) in splash screen (React Native)

javascript - 切换对象的原型(prototype)

javascript - HTML Canvas 未使用 Javascript 进行更新

reactjs - 我可以在所有钩子(Hook)的依赖数组中放入什么类型的变量

javascript - 悬停在 MouseEnter 和 onMouseLeave React 上不起作用。超出最大调用堆栈大小

android - react-native android fontFamily 不生效

javascript - 更改后内部函数无法访问外部函数变量

javascript - 用 vis.js 绘制大树

javascript - 网络错误 : Unexpected token < in JSON at position 0 at new ApolloError

react-native - 如何在 React Native 中按时打开其他移动应用程序?