expo-font
expo-font
开放Beta测试文档 作为预发布开放Beta测试的一项内容,亚马逊提供了此技术文档。随着亚马逊收到反馈并对功能进行迭代,所描述的这些功能可能会发生变化。有关最新功能的信息,请参阅发布说明。
@amazon-devices/expo-font提供了一个在运行时加载字体并在React Native组件中使用它们的接口。
安装
- 在
package.json文件中添加JavaScript库依赖项。dependencies: { ... "@amazon-devices/keplerscript-turbomodule-api": "~1.0.0", "@amazon-devices/expo-asset": "~2.0.0", "@amazon-devices/expo-constants": "~2.0.0", "@amazon-devices/expo-font": "~2.0.0", "expo": "~50.0.0", ... } - 使用
npm install命令重新安装依赖项。
示例
下面的示例演示了如何使用useFonts挂钩加载字体。您需要下载.otf文件并替换useFonts调用中的内容。
import {useFonts} from '@amazon-devices/expo-font';
import React from 'react';
import {StyleSheet, Text, View} from 'react-native';
export const App = () => {
const [fontsLoaded] = useFonts({
'Inter-Black': require('./assets/fonts/Inter-Black.otf'),
});
if (!fontsLoaded) {
return null;
}
return (
<View style={styles.container}>
<Text style={[styles.text, {fontFamily: 'Inter-Black'}]}>
Inter Black
</Text>
<Text style={styles.text}>Platform Default</Text>
</View>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
padding: 20,
backgroundColor: 'white',
},
text: {
fontSize: 30,
color: 'black',
},
});
API参考
请您查看以下专门文档页面,了解有关此库、API参考等的信息: 针对expo-font的官方Expo文档(仅提供英文版)。
挂钩
| 挂钩 | 描述 |
|---|---|
useFonts |
使用loadAsync加载字体映射。如果字体已加载并且可以使用,则返回boolean。 |
方法
| 方法 | 描述 |
|---|---|
isLoaded |
同步检测fontFamily的字体是否已完成加载。 |
isLoading |
同步检测fontFamily的字体是否仍在加载中。 |
loadAsync |
从静态或远程资源加载字体的高效方法,可以将其结合平台的原生文本元素一起使用。 |
processFontFamily |
用于将字体系列名称转换为作用域内名称。此项不需要在独立应用或裸应用中调用,但如果在这些上下文中调用,它将返回非作用域内的字体系列名称。 |
unloadAllAsync |
卸载所有自定义字体。此项用于测试。 |
unloadAsync |
卸载与所提供的fontFamily和显示值相匹配的自定义字体。 |
添加自定义字体
除了修改应用中的标准Vega字体外,您还可以加载自己的自定义字体。
要加载自定义字体,请将您的字体文件放在assets/fonts/目录中。
您的字体文件名必须与字体系列名称相匹配。例如,如果字体系列名称为Open Sans,则您的字体文件名应为Open Sans.ttf。
支持的版本
| 程序包版本 | 基于 | @amazon-devices/react-native-kepler版本 |
|---|---|---|
| 2.0.x | 11.8.0 | 2.0.x |
其他资源
有关其他库的信息,请参阅支持的第三方库和服务。
Last updated: 2025年9月30日

