简体   繁体   English

Expo react-native 不使用 fontFamily

[英]Expo react-native doesn't use fontFamily

I want to add custom font to my react native application.我想将自定义字体添加到我的 react 本机应用程序中。 But I can't to add custom font Roboto.但我不能添加自定义字体 Roboto。 I tried using我尝试使用

await Font.loadAsync({
    'Roboto-Black': require('../fonts/Roboto-Black.ttf'),
    'Roboto-BlackItalic': require('../fonts/Roboto-BlackItalic.ttf'),
    'Roboto-Bold': require('../fonts/Roboto-Bold.ttf'),
    'Roboto-Italic': require('../fonts/Roboto-Italic.ttf'),
    'Roboto-Light': require('../fonts/Roboto-Light.ttf'),
    'Roboto-LightItalic': require('../fonts/Roboto-LightItalic.ttf'),
    'Roboto-Medium': require('../fonts/Roboto-Medium.ttf'),
    'Roboto-MediumItalic': require('../fonts/Roboto-MediumItalic.ttf'),
    'Roboto-Regular': require('../fonts/Roboto-Regular.ttf'),
    'Roboto-Thin': require('../fonts/Roboto-Thin.ttf'),
    'Roboto-ThinItalic': require('../fonts/Roboto-ThinItalic.ttf')
  })

And

import {
  useFonts,
  Roboto_100Thin,
  Roboto_100Thin_Italic,
  Roboto_300Light,
  Roboto_300Light_Italic,
  Roboto_400Regular,
  Roboto_400Regular_Italic,
  Roboto_500Medium,
  Roboto_500Medium_Italic,
  Roboto_700Bold,
  Roboto_700Bold_Italic,
  Roboto_900Black,
  Roboto_900Black_Italic,
} from '@expo-google-fonts/roboto'

let [fontsLoaded] = useFonts({
    Roboto_100Thin,
    Roboto_100Thin_Italic,
    Roboto_300Light,
    Roboto_300Light_Italic,
    Roboto_400Regular,
    Roboto_400Regular_Italic,
    Roboto_500Medium,
    Roboto_500Medium_Italic,
    Roboto_700Bold,
    Roboto_700Bold_Italic,
    Roboto_900Black,
    Roboto_900Black_Italic,
  });

And

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

Nothing work on android. android 没有任何作用。 And if I put to fontFamily some text have not any error.如果我把一些文本放到 fontFamily 中,则没有任何错误。

fontFamily: "lorem ipsumasdfasdfasdfadf"

No error on it...它没有错误...

you can try using the { useFonts } library from 'expo-font' like below.您可以尝试使用来自 'expo-font' 的 { useFonts } 库,如下所示。

 import { useFonts } from 'expo-font';



 let [fontsLoaded] = useFonts({
'Roboto': require('./assets/fonts/Roboto.otf'),});

if (!fontsLoaded) {
    return (
        <SafeAreaProvider>
            <SafeAreaView>
                <AppLoading fontsLoaded={fontsLoaded} />
            </SafeAreaView>
        </SafeAreaProvider>
    );

Please also view the documentation in expo website: https://docs.expo.io/guides/using-custom-fonts/另请查看 expo 网站中的文档: https://docs.expo.io/guides/using-custom-fonts/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM