0

反応ネイティブ プロジェクト用に ui-kitten をインポートしました。私はドキュメントに従っていますが、テーマを変更する機能があることに気付きました。私の App.js では、ナビゲーターとプロバイダーも宣言しています。アプリケーションの画面/コンポーネントからin の値themeにアクセスできるようにするにはどうすればよいですか?<ApplicationProvider theme={theme}>

App.js:
// ui-kitten
import { ApplicationProvider, IconRegistry } from '@ui-kitten/components';
import { mapping, light as lightTheme, dark as darkTheme } from '@eva-design/eva';
import { EvaIconsPack } from '@ui-kitten/eva-icons';
...
// our app export:
export default () => {
<Provider1>
  <Provider2, etc>
     <ApplicationProvider mapping={ mapping } theme={ darkTheme }>
       <IconRegistry icons={ EvaIconsPack }/>
       <App ref={ (navigator) => {
         setNavigator(navigator)
        } }/>
     </ApplicationProvider>
  </Provider2, etc>
</Provider1>

私はすでに ThemeContext を作成しようとしました:

export default () => {
const { setTheme } = useContext(ThemeContext);
<Provider1>
  <Provider2, etc>
     <ApplicationProvider mapping={ mapping } theme=setTheme>
       <IconRegistry icons={ EvaIconsPack }/>
       <App ref={ (navigator) => {
         setNavigator(navigator)
        } }/>
     </ApplicationProvider>
  </Provider2, etc>
</Provider1>
4

1 に答える 1