con expo-font podemos renderizar las fuentes de forma asincrónica cuando se carga la aplicación aquí está el ejemplo. Del mismo modo, podemos representar fuentes sin exposición.
import {AppLoading} from 'expo' import * as Font from 'expo-font' import React from 'react'; state = { isFontLoaded:false } async componentDidMount() { await Font.loadAsync({ "Bold":require('./src/fonts/Montserrat-ExtraBold.otf'), "Medium":require('./src/fonts/Montserrat-Medium.otf'), "Regular":require('./src/fonts/Montserrat-Regular.otf'), }) this.setState({isFontLoaded:true}) }1 - cree una carpeta llamada "activos", dentro de ella cree la carpeta "fuentes" y coloque todos sus archivos ttf dentro de ella.
2 - cree un archivo en la raíz llamado: react-native.config.js y póngalo dentro:
module.exports = { project: { ios: {}, android: {} }, assets: ['./assets/fonts'] }; 3 - ejecute este comando: npx react-native link 4- uso: en la hoja de estilo use fontFamily:"font name", y también fontweight:''