Android运行正常-我有一个文本组件<Text style={styles.orText}>{'HELLO'}</Text>
和定义了fontFamily: 'SourceSansPro-SemiboldItalic'
的样式。在iOS上,我收到错误[error][tid:com.facebook.react.ShadowQueue][RCTFont.mm:316] Unrecognized font family 'SourceSansPro-SemiboldItalic'
。
[如果我在iOS上将该样式更改为SourceSansPro-Semibold
,则不会出现任何错误,但文本完全不会呈现。我有一个来自rn-elements的Button组件,可以正确呈现'SourceSansPro-Semibold'
。
我已将所有.ttf字体文件添加到我的项目中,它们都在副本捆绑资源中,并且也添加到由应用程序提供的字体下的Info.plist中。完成了多次构建清理,还尝试了切换到旧版构建系统。我正在从Xcode运行该应用程序,但我也尝试过运行react-native run-is
并得到相同的字体错误。我有在App Delegate中运行的代码来报告字体,并且它显示了斜体字的所有名称的截断名称:
2020-05-26 10:57:35.426495+0200[97197:8029221] Source Sans Pro
2020-05-26 10:57:35.426871+0200[97197:8029221] SourceSansPro-BlackIt
2020-05-26 10:57:35.427183+0200[97197:8029221] SourceSansPro-SemiboldIt
2020-05-26 10:57:35.427585+0200[97197:8029221] SourceSansPro-LightIt
2020-05-26 10:57:35.427993+0200[97197:8029221] SourceSansPro-BoldIt
2020-05-26 10:57:35.428413+0200[97197:8029221] SourceSansPro-Light
2020-05-26 10:57:35.428764+0200[97197:8029221] SourceSansPro-ExtraLightIt
2020-05-26 10:57:35.429126+0200[97197:8029221] SourceSansPro-Regular
2020-05-26 10:57:35.429549+0200[97197:8029221] SourceSansPro-It
2020-05-26 10:57:35.429852+0200[97197:8029221] SourceSansPro-ExtraLight
2020-05-26 10:57:35.430232+0200[97197:8029221] SourceSansPro-Bold
2020-05-26 10:57:35.430571+0200[97197:8029221] SourceSansPro-Semibold
2020-05-26 10:57:35.430948+0200[97197:8029221] SourceSansPro-Black
2020-05-26 10:57:44.341 [error][tid:com.facebook.react.ShadowQueue][RCTFont.mm:316] Unrecognized font family 'SourceSansPro'
2020-05-26 10:58:11.447 [error][tid:com.facebook.react.ShadowQueue][RCTFont.mm:316] Unrecognized font family 'SourceSansPro'
2020-05-26 11:00:43.704 [error][tid:com.facebook.react.ShadowQueue][RCTFont.mm:316] Unrecognized font family 'SourceSansPro-SemiboldItalic'
2020-05-26 11:00:47.150 [error][tid:com.facebook.react.ShadowQueue][RCTFont.mm:316] Unrecognized font family 'SourceSansPro-SemiboldItalic'
任何想法?带有RN 62.2。的Xcode 11.4.1发生在设备以及模拟器上。 TIA
1-确保您使用相同的字体名称(如果您输入错误的字体名称,Android不会给您错误)
2次运行npx react-native link
3-如果您在ios中仍然遇到相同的错误,则可以通过此链接在ios中手动链接字体
Link Custom Fonts Manually for iOS
4-代表“ SourceSansPro-Semibold”,删除其他文本样式,您会发现文本出现