React Native 0.70+移除link后如何自定义链接字体?
React Native 0.70+ 字体链接替代方案
React Native 0.70版本开始移除了react-native link命令,你可以通过以下两种方式完成字体链接:
方法一:使用自动化工具(推荐)
借助react-native-asset工具可快速完成自动链接,步骤如下:
- 安装开发依赖:
npm install --save-dev react-native-asset # 或使用yarn yarn add --dev react-native-asset - 保留你原有的
react-native.config.js配置不变:// file react-native.config.js module.exports = { project: { ios: {}, android: {}, }, assets: ['./src/assets/fonts/aaa', './src/assets/fonts/bbb'], }; - 执行命令完成链接:
npx react-native-asset
方法二:手动配置
iOS 端
- 打开Xcode项目,将目标字体文件(
.ttf/.otf等格式)拖入项目的Resources目录,勾选Copy items if needed和对应的项目target。 - 在项目的
Info.plist文件中,添加UIAppFonts数组类型字段,将每个字体的完整文件名(包含后缀)作为数组元素填入,示例:<key>UIAppFonts</key> <array> <string>FontA.ttf</string> <string>FontB.ttf</string> </array>
Android 端
- 在
android/app/src/main/assets目录下创建fonts子目录(如果不存在)。 - 将所有字体文件复制到
android/app/src/main/assets/fonts目录中。
验证使用
完成配置后,即可在代码中通过fontFamily属性引用字体,示例:
<Text style={{ fontFamily: 'FontFamilyName' }}>测试字体</Text>
注:这里的
FontFamilyName是字体文件对应的 fontFamily 名称,可能和文件名不一致,部分字体需要通过字体文件属性查看实际名称。
内容的提问来源于stack exchange,提问作者MShokry
相关产品推荐
相关产品推荐

