android - 如何在 React Native Android 中添加自定义字体

标签 android react-native

我想将 fontFamily 设置为工具栏标题的 roboto thin。

我在我的 android 项目的 assets/fonts 文件夹中添加了 roboto thin ttf,但是它似乎在运行应用程序时产生了问题。我在运行时遇到这个问题

react-native start

ERROR  EPERM: operation not permitted, lstat 'E:\Myntra\android\app\build\gener
ated\source\r\debug\android\support\v7\appcompat'
{"errno":-4048,"code":"EPERM","syscall":"lstat","path":"E:\\Myntra\\android\\app
\\build\\generated\\source\\r\\debug\\android\\support\\v7\\appcompat"}
Error: EPERM: operation not permitted, lstat 'E:\Myntra\android\app\build\genera
ted\source\r\debug\android\support\v7\appcompat'
    at Error (native)

当我删除字体时,它工作正常。 我无法解决这个问题。这是什么原因?

最佳答案

更新

这里有很多关于在 < 0.60 版本的 react-native 中添加自定义字体的答案。

对于那些正在使用 react-native version > 0.60 的用户,'rnpm' 已被弃用,自定义字体将不起作用。

现在,为了在 react-native 版本 > 0.60 中添加自定义字体,你必须:

1- 在项目的根文件夹中创建一个名为 react-native.config.js 的文件。

2- 在那个新文件中添加这个

module.exports = {
project: {
    ios: {},
    android: {},
},
assets: ['./assets/fonts']
};

对于那些在 react-native version < 0.69.x 上运行的用户

3- 在根项目路径中运行 react-native link 命令。

PS 在运行 react-native link 命令之前确保字体文件夹的路径正确


对于那些在 react-native version >= 0.69.x 上运行的,由于 link 已弃用,因此 react-native link将不再工作, 命令 react-native link 替换为 npx react-native-asset

有关该版本的更多信息可在此处查看:https://github.com/react-native-community/cli/releases/tag/v8.0.0

关于android - 如何在 React Native Android 中添加自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41825276/

相关文章:

Android ffmpeg 应用视频效果需要时间

android - 带右箭头的按钮

javascript - 使用 crypto js AES ECB 算法在 JavaScript 中加密字节数组

react-native - 从功能组件 React Native 调用功能

android - Libgdx - 纹理

android - Android 2.1 上的 navigator.onLine 是否存在已知问题?

javascript - 从 FlatList 中选择一个项目并将值传递给变量 state

javascript - 如何防止渲染方法在初始设置为未定义的状态上抛出错误

android - 如何更好地在 Android 上对 Looper 和 Handler 代码进行单元测试?

reactjs - 警告 : <VIEW/> is using incorrect casing. React 组件使用 PascalCase,HTML 元素使用小写