我已将 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;