【问题标题】:Adding a value to a TextInput changes the font-weight for some reason由于某种原因,向 TextInput 添加值会更改字体粗细
【发布时间】:2021-11-28 05:54:21
【问题描述】:

我试图在用户输入时格式化日期,但是当我添加值字段 (value={this.state.dob}) 时,样式会更改为更粗的字体粗细(有时会更改为右侧字体重量中间打字)。它似乎真的来自我尝试将它添加到此页面的其他输入的值字段,它做同样的事情。

  <TextInput
        placeholder="JJ/MM/AAAA"
        keyboardType={'number-pad'}
        onChangeText={(text) => this._onChangeDate(text)}
        name="dob"
        style={styles.textBox}
        value={this.state.dob} //Just removing this work but I can't liveformat the date anymore 
        maxLength={10}
   />

_onChangeDate = (value) => {
    this.setState({
        dob: this.liveFormatDate(value),
    })  

}

liveFormatDate 返回一个字符串,在需要时添加斜杠丢弃字母等

How it looks right now

How it should look like (when there are 6 characters it looks like this) 我没有修改两个截图之间的代码

【问题讨论】:

  • 嗯,我使用与用户键入相同的模式来格式化电话号码,但没有看到相同的问题。你是如何创造你的风格的?你在用StyleSheet.create吗?
  • 您好我已经通过在样式中添加一个 font-weight 属性解决了这个问题(如果我没记错的话,font-weight:"normal" 这是默认值。)所以行为是真的很奇怪。
  • 太棒了!!很高兴你明白了:)

标签: react-native react-native-textinput react-native-stylesheet


【解决方案1】:

解决方案是在样式中添加权重属性 (font-weight: "normal")。虽然我不知道为什么字体粗细一直在变化,但我不知道是什么原因造成的。

【讨论】:

    猜你喜欢
    • 2015-11-30
    • 2021-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-13
    • 2018-05-07
    • 2021-12-06
    • 2021-06-04
    相关资源
    最近更新 更多