Expo字体在tvOS上加载失败
我在我的Expo Android TV应用里想把文本设为粗体。
仅仅使用 fontWeight: 600 没有作用,所以我以为默认字体没有粗体。
随后我按照Expo文档安装自定义字体,尝试了所有方法(既有本地字体也有Google字体),并使用config插件和useFont钩子。
这些办法都不起作用。
请帮忙🙏
软件包:
"@expo-google-fonts/nunito": "^0.4.2"
"expo": "^55.0.2"
"expo-font": "~55.0.6"
"react": "19.2.4"
"react-native": "npm:[email protected]"
解决方案
fontWeight 在Android上并非直接支持。你按下面的方式定义确切的字体定义:
import { Text, View } from 'react-native';
import { useFonts } from 'expo-font';
import {
Nunito_400Regular,
Nunito_600SemiBold,
} from '@expo-google-fonts/nunito';
export default function App() {
const [fontsLoaded] = useFonts({
Nunito_400Regular,
Nunito_600Bold,
});
if (!fontsLoaded) {
return null; // or a loader
}
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
<Text style={{ fontFamily: 'Nunito_400Regular', fontSize: 18 }}>
Regular Nunito
</Text>
<Text style={{ fontFamily: 'Nunito_600SemiBol', fontSize: 18 }}>
Semi Bold Nunito
</Text>
</View>
);
}
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。