console.error:“ fontFamily”材质图标“不是系统字体,并且尚未通过Font.loadAsync加载

时间:2019-03-06 19:30:17

标签: react-native react-native-vector-icons vector-icons

我正在尝试从react-native-vector-icons / MaterialIcons添加一个图标:

import Icon from 'react-native-vector-icons/MaterialIcons';

<View style={styles.picture}>
  { <Icon
    name="add-circle"
    onPress={() => alert("Add Picture")}
    color="green"
  /> }
</View>

但是我得到了:

  

console.error:“ fontFamily“材料图标”不是系统字体,并且   尚未通过Font.loadAsync

加载

我尝试使用Font.loadAsync

await Font.loadAsync({'MaterialIcons': require('@expo/vector-icons/fonts/MaterialIcons.ttf')})

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用Expo时,最好使用内置的图标。

Expo实际上带有react-native-vector-icons。因此,您不需要安装任何东西。您只需从@expo/vector-icons

导入图标

https://docs.expo.io/versions/latest/guides/icons/

import { MaterialIcons } from '@expo/vector-icons';

<MaterialIcons
  name="add-circle"
  onPress={() => alert("Add Picture")}
  color="green"
/>

还值得检查图标是否存在,您可以在directory中进行操作。