ChenPt / dailyNote

dailyNode for myself
https://github.com/ChenPt/dailyNote/issues
0 stars 0 forks source link

ReactNative禁止字体大小随着系统字体大小改变 #36

Open ChenPt opened 4 years ago

ChenPt commented 4 years ago

react native 原生的text标签和textInput标签的字体大小是会随着系统字号的改变而改变的。 控制这种特性的属性是allowFontScaling,默认值为true。解决办法

  1. 每一个Text标签和TextInput标签手动添加allowFontScaling: false,这样不太符合实际
  2. 再封装Text,TextInput,添加allowFontScaling: false属性
  3. 重写原生Text,TextInput的render方法,传一个allowFontScaling
  4. 如下
    // 字体大小不会随着系统字体大小而变化
    TextInput.defaultProps = Object.assign({}, TextInput.defaultProps, { allowFontScaling: false })
    Text.defaultProps = Object.assign({}, Text.defaultProps, { allowFontScaling: false })