ios - React Native多行垂直居中文本在IOS上的问题

标签 ios react-native textinput

我在我的react-native应用程序中使用多行TextInput,并且已经坚持了一段时间了。我无法让文本在 IOS 设备上垂直对齐。

使用 textAlign='center' 将 IOS 上的文本垂直居中...但它变成了一条展开的永无止境的行。

添加 multiline={true} 会取消 IOS 中垂直对齐的文本并将其置于输入的顶部。

<TextInput
    style={{ 
        width: wp('80%'), 
        height: hp('25%'), 
        borderWidth: 1, 
        borderRadius: 10,   
        fontSize: RF(3), 
    }}
    textAlign={'center'}
    multiline={true}
    onChangeText={entry => this.setState({entry})}
    value={this.state.entry}
/>

我希望行为像android一样,它显示占位符文本垂直和水平居中,当用户输入更多文本时,它会根据需要开始创建多行,但始终垂直和水平居中。

请参阅左侧为 Android 版本、右侧为 IOS 版本的图片。

Android on left, IOS on right

最佳答案

尝试将 textAlignVertical={"center"} 添加到 textInput 的 props

关于ios - React Native多行垂直居中文本在IOS上的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54336105/

相关文章:

react-native - React Native 在 npm 5.3.0 中不起作用

typescript - Android Build 上 node_modules/react-native/index.js : Unexpected token, 中的 React Native SyntaxError 预期 "{"(13:7)

swift - 如何从 UIAlertcontroller 获取文本输入或如何使用 Swift 等待输入

iOS Facebook sdk邀请好友请求已发送但未收到好友通知

iphone - 如何停止使用 NSOperationQueue 启动的任务?

iphone - 哪些 AR 库对于开发用于显示某些对象信息的 iOS 应用程序很有用?

ios - 当我的应用程序被终止时,如何将数据发布到服务器?

reactjs - 无法重用我的组件,它只显示 1 次

javascript - 如何在输入中绑定(bind)两个键盘键,如 Ctrl +L

react-native - 当在 native 中输入超过 6 个字符时,如何更改 textInput 文本中的字体大小?