我可以添加普通字体,但不能添加FontAwesome,我正在使用FontAwesome的v4.7.0。
我在SO上检查了较旧的答案,但我发现this one只是相关的,但我认为答案已经过时了,因为你不能将字体与文件名的第一个字母小写联系起来,它必须是大写的,例如'Font Awesome.ttf'(这就是我现在所拥有的)。这种命名策略适用于添加另一种名为“Titillium Web”的常规字体。
我的index.js
export default class App extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.fontawesome}></Text>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
fontawesome:{
fontFamily: 'Font Awesome',
color: '#000',
fontSize: 20
},
});
AppRegistry.registerComponent('myappname', () => App);
在我的package.json
中 "rnpm": {
"assets": [
"./src/assets/fonts/TitilliumWeb",
"./src/assets/fonts/FontAwesome"
]
},
在项目目录中 执行 react-native link
,字体被正确复制。
已执行 react-native run-android
。
我的环境