当前位置: 首页 > 知识库问答 >
问题:

有办法在React Native中全局设置字体吗?

喻昀
2023-03-14

我需要创建一个自定义字体,适用于整个应用程序中的每个< code>Text组件。

有没有办法在 React Native 中全局设置字体?

共有3个答案

谢铭
2023-03-14

我认为你的问题是在react native中添加自定义字体。

1.将自定义字体添加到资源

将所有想要的字体文件添加到react本机项目根目录下的“资产/字体”文件夹中:

2. Edit Package.json

将 rnpm 添加到 package.json,提供字体文件的路径:

"rnpm": {
    "assets": [
    "./assets/fonts/"
    ]
},

3.链接assest文件

在 react 本机项目根文件夹中运行此命令

react-native link

这应该在iOS的Info.plist文件中添加字体引用,并在Android上将字体文件复制到android/app/src/main/assets/fonts。

4.插件样式表

使用您的字体名称添加fontFamily属性:

const styles = StyleSheet.create({
      title: {
        fontSize: 16,
        fontFamily: 'PlayfairDisplay-Bold',
        color: '#fff',
        paddingRight: 20,
      },
    });
干宏邈
2023-03-14

为此,我们必须实现一个方法,在该方法中,我们将覆盖React Native中的< code>Text组件创建。在这里,我们将设置默认字体系列或字体大小,或者任何我们想要默认设置的属性。

// typography.js

import React from 'react'
import { Text, Platform, StyleSheet } from 'react-native'

export const typography = () => {
  const oldTextRender = Text.render
  Text.render = function(...args) {
    const origin = oldTextRender.call(this, ...args)
    return React.cloneElement(origin, {
      style: [styles.defaultText, origin.props.style],
    })
  }
}

const styles = StyleSheet.create({
  defaultText: {
    fontFamily: 'NunitoSans-Regular',//Default font family
  }
}); 

然后在index.js你必须这样做:

import { typography } from './src/utils/typography'

typography()

详细答案如下:https://ospfolio.com/two-way-to-change-default-font-family-in-react-native/

卞俊贤
2023-03-14

一种方法是为RN Text创建一个包装器,比如MyTextCustomFont:

const MyTextCustomFont = (props) => {
   return (
        <Text style={{fontFamily:'myFont'}} {...props} >{props.children}</Text>
   )
}

导入此MyTextCustomFont并在任何地方使用。

另一种方法是定义样式对象,并在任何需要的地方使用它。

 类似资料:
  • 问题内容: 我试图在mysql中设置sql_mode,但会引发错误。 命令: 这不是设置多种模式的正确方法吗?设置会话和全局模式的优点是什么?哪有?我有不同的用户尝试使用不同的UNC值更新数据库,并插入od将会话模式设置为“ NO_BACKSLASH_ESCAPES”,尽管为此我可以使用一种通用的模式。这有意义吗? 请告诉我。 谢谢。 问题答案: 我解决了 正确的模式是:

  • 主要用于设置三级权限以及密码策略等。 该功能用于设置是否启用三级权限以及密码策略相关配置。参数设置完成后,需要5分钟后生效。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “系统配置/全局设置/全局设置” 菜单项,进入全局设置页面。 目前全局设置支持设置以下选项: 配额检查开关:设置是否启用配额检查,默认关闭配额检查。如用户有配额限制的要求,可以开启配额检查,开启后,用户可以在域或

  • 目前仅支持字典设置和全局设置,参数配置后全局生效。 字典设置 用于自定义云管平台中常用菜单的显示名称。 全局设置 主要用于设置三级权限以及密码策略等。

  • 1)加密设置 加密设置分为,PC加密设置和移动加密设置。 PC加密设置: 当PC加密为“打开”状态时,新上传的视频会进行加密(加密视频只能使用获得场景视频播放器),已上传的视频保持不变。 当PC加密为“关闭”状态时,新上传的视频不会进行加密,已上传的视频保持不变。 移动加密设置: 非加密——当设置成【非加密】时,移动端将不受限制,此时不受保护。 WEB授权——可以在移动WEB端播放和APP端播放,

  • 在直播管理页面点击 “全局设置” ,观看者可以在观看端对客户端进行打赏。打赏分为现金打赏 和 道具打赏 。 打赏设置 说明: 1)全局设置中支持配置现金打赏及道具打赏相关参数 2)直播间可应用全局打赏设置,应用后,观看端可对讲师进行打赏 敏感词设置 说明: 1)全局设置中支持设置敏感词,支持手动单个添加及应用模板批量导入 2)已添加的敏感词支持删除操作,也可一键情况敏感词列表 3)支持按角色进行过

  • 目标服务器正在使用自签名证书。是否有方法禁用认证检查?在另一个web服务器实例中,我们使用 在使用詹金斯时,是否可以有类似的选择?