推荐:React Native主题管理利器 —— `react-native-theme`
import Theme from 'react-native-theme';
// 设置默认主题
Theme.setDefaultTheme('dark');
// 设置当前主题
Theme.setTheme('light');
// 获取当前主题
const currentTheme = Theme.getTheme();
// 监听主题变化
const unsubscribe = Theme.addThemeChangedListener((theme) => {
console.log('当前主题已变为:', theme);
});
// 停止监听主题变化
unsubscribe();
// 在组件中使用主题
class MyComponent extends React.Component {
render() {
// 使用主题变量
const { theme } = this.props;
return (
<View style={{ backgroundColor: theme.colors.background }}>
<Text style={{ color: theme.colors.text }}>Hello, World!</Text>
</View>
);
}
}
// 高阶组件封装,自动传递主题属性
const ThemeConsumer = Theme.withTheme(MyComponent);
这段代码演示了如何使用react-native-theme
库来管理React Native应用的主题。首先,我们设置了默认主题和当前主题,然后监听主题变化并在控制台输出变化信息。最后,我们创建了一个使用主题变量的简单组件,并演示了如何使用高阶组件withTheme
来自动传递主题属性。这样的实践可以帮助开发者更好地在React Native应用中实现主题切换的功能。
评论已关闭