字体系列 Roboto 轻而粗的反应原生

新手上路,请多包涵

我正在对我的 react native 应用程序中的文本进行一些更改:我需要为段落指定 Roboto light,为标题指定 Roboto Bold。我需要在 iOS 和 Android 应用程序中具有相同的文本外观:所以我需要让它同时适用于我尝试了这段代码的代码行

text    : {
       fontFamily: 'sans-serif-light'
   },

但我收到此错误: 在此处输入图像描述

我从官方文档中尝试了这种类型,它工作正常

title   : {
       fontFamily: 'Cochin'
   },

–> 所以我认为问题出在 Roboto 字体家族本身。有什么帮助吗?

原文由 user3521011 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 867
2 个回答

将自定义字体添加到您的应用程序商店中的所有 ttf 文件在一个目录中。将以下代码添加到您的 package.json 文件中。

"rnpm": { "assets": [ "./fonts" // yours fonts directory ] }

然后运行 react-native link 要使用字体,请在 fontFamily 中的 ttf 文件上使用相同的名称。

原文由 Roman Akash 发布,翻译遵循 CC BY-SA 3.0 许可协议

sans-serif-lightRoboto 是 Android 专用字体。 iOS 需要不同的字体。这个存储库有一个适用于 iOS 和 Android 的字体列表 - https://github.com/react-native-training/react-native-fonts

您可以使用 Platform.select() 为每个操作系统定位不同的字体:

 title: {
  ...Platform.select({
       ios: { fontFamily: 'Arial', },
       android: { fontFamily: 'Roboto' }
  })
}

原文由 RRikesh 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题