自定义字体未应用React Native Elements Button组件

时间:2018-09-18 15:46:05

标签: reactjs react-native

无法在react native元素中为Button设置自定义字体。

我正在使用“ react-native-elements”:“ ^ 0.19.1”版本,并尝试为按钮设置自定义字体。字体已在“文本”组件页面上正常工作。

<Button
        rightIcon={{ name: 'history', type: 'font-awesome'}}
        transparent={true}
        title='History'
        fontSize={18}
        fontWeight='bold'
        fontFamily='montserrat'
      />

但是字体没有改变或没有引发任何错误。我试图给fontFamily“ textStyle”,“ titleStyle”道具。没有运气。

字体包含片段

async componentWillMount() {
try{
  await Expo.Font.loadAsync({
    montserrat: require("./assets/fonts/Montserrat.ttf"),
    montserrat_light: require("./assets/fonts/Montserrat_light.ttf")
  });
  this.setState({ loading: false });
}catch(error){
  console.warn('Error loading fonts', error);
}

}

注意:自定义字体是使用componentWillMount方法加载的。

谢谢。

1 个答案:

答案 0 :(得分:1)

最后,我找到了解决方案。问题是为按钮提供了var analytics = await _analyticsRepository.Query().Where(x => x.DateTime.Subtract(DateTime.Today).Days < 0) var analytics = await _analyticsRepository.Query().GroupBy(x => x.DateTime.Date) .Select(x => new { DateTime = x.Key, Max = x.Max(y => y.KiloWatt), Min = x.Min(y => y.KiloWatt), Avg = x.Sum(y => y.KiloWatt)/ x.Count(), Sum = x.Sum(y => y.KiloWatt) }) .ToListAsync(); 。我们必须在异步字体加载中定义粗体字体,然后在fontFamily中调用名称。

以下脚本将解决我的问题,

fontWeight

我们需要在Async中定义字体路径,如下所示,

<Button
        rightIcon={{ name: 'history', type: 'font-awesome'}}
        transparent={true}
        title='History'
        fontSize={18}
        fontFamily='montserrat_bold'
      />

}