0

我已将 UI Kitten 添加到现有的 React Native 项目中,并且主题似乎在一定程度上可以工作,因为Card当我ApplicationProvider应用 . ,特别是通过withStyles

据我从他们的文档这个线程中可以看出,我当前的设置应该让我为导航器的标题选择自定义背景颜色。导航器功能很好。

他们的文档也给我的印象是,我应该能够eva通过props任何组件访问,因为我已将应用程序包装在 gloabl 提供程序中,但似乎情况并非如此。

App.js 渲染 fn:

return (
  <NavigationContainer>
    <SafeAreaProvider>
      <Provider value={{ loggedIn, setLoggedIn, teas, setTeas }}>
        <ApplicationProvider {...eva} theme={{ ...eva.dark, ...theme }}>
          <DrawerNavigator />
        </ApplicationProvider>
      </Provider>
    </SafeAreaProvider>
  </NavigationContainer>
);

DrawerNavigator.js(我有一个 Drawer 和一个 Stack navigator)

const Drawer = createDrawerNavigator();

return (
  <Drawer.Navigator>
    <Drawer.Screen name="Home" component={MainStackNavigator} />
    <Drawer.Screen name="Auth" component={Auth} />
  </Drawer.Navigator>
);

MainStackNavigator.js

const Stack = createStackNavigator();

const ThemedTopNavigation = withStyles(TopNavigation, (theme) => ({
  topNavStyles: {
    backgroundColor: theme["color-primary-900"],
  },
}));

const MainStackNavigator = () => {
  return (
    <Stack.Navigator
      header={<ThemedTopNavigation style={eva.style.topNavStyles} />}
    >
    //... rest of the navigator

export const MainStackNavigator;
4

0 回答 0