响应本机应用程序主题化

时间:2018-11-29 11:10:59

标签: reactjs react-native

我有一个与React Native有关的问题。

我有应该主题的现有应用程序,并且主题应该是可配置设置的一部分。这种主题应该从三个方面进行:更改颜色/主题,更改徽标和添加自定义字体

我看到这是一种可以在其中查看设置视图的方式:

  • 可以上传图片,图片将存储在ios和android的文件系统中,然后用作品牌徽标
  • 对于主要,次要,按钮颜色(作为哈希值)或某些颜色选择器组件,将有多种设置
  • 最复杂的东西是具有可在设置应用程序的视图中由用户配置的自定义字体。有人有做过这种事情的经验吗?

以上几点的任何想法/建议都将有所帮助。像是到这两个平台的本机库的链接,或来自更多经验的本机开发人员的任何提示

1 个答案:

答案 0 :(得分:1)

我认为实现自己想要的最好的方法是:

  • 使用https://github.com/itinance/react-native-fs访问文件系统,以便您可以轻松存储和访问用户所需的徽标。如果图像有一些大小限制,您也可以将图像Base64字符串存储在AsyncStorage中,但是不建议这样做。
  • 您可以通过使用屏幕使用的全局样式文件来建立一种主题系统,可以将所请求的值(例如“ dark”,“ light”等)存储在AsyncStorage中。
  • 您是否希望用户能够使用自己的个人字体?我认为这是不可能的。例如,如果要使用多种字体,并且用户可以选择列表中将使用的字体,则可以按照本教程的说明安装自定义字体:https://medium.com/@kswanie21/custom-fonts-in-react-native-tutorial-for-ios-android-76ceeaa0eb78。然后,您要做的就是使用主题系统选择文本元素将使用的fontFamily!

如果我不太清楚或者您需要建议,请让我知道,我最近做了您尝试实现的目标:)