【问题标题】:Exact height of keyboard (with autoCorrect) in react-native on AndroidAndroid 上 react-native 中键盘的精确高度(使用自动更正)
【发布时间】:2016-06-26 13:53:33
【问题描述】:

我正在尝试获取键盘的高度,以便在它出现时滚动我的视图。 keyboardDidShow 事件在 IOS 中完美运行,坐标的 height 值考虑了 autoCorrect 时出现在键盘顶部的额外位em> 开启。

this.keyboardShowListener = DeviceEventEmitter.addListener(
    'keyboardDidShow', this.keyboardDidShow);

...

keyboardDidShow (e) {
    let keyboardHeight = e.endCoordinates.height;
    this.refs.mainScrollView.scrollTo(
        {x: 0, y: keyboardHeight, animated: true});
},

但是,在 Android(NR 0.21.0)中,看起来给定的高度值不包括额外的 auto-correct 组件高度,所以当我滚动它时有点短。

现在我可以为 android 添加一些价值,但这似乎不是一个好的解决方案。你能确定它适用于每个安卓键盘吗?我怀疑不是。

那么,有没有办法获取键盘对象的句柄以对其进行测量?

【问题讨论】:

  • 我意识到这个代码只有在IOS中才需要。如果我将视图包装在 ScrollView 中,那么当键盘出现时,android 会自动滚动它。问题是它没有滚动正确的数量。一些键盘呈现在我的视图底部。

标签: android ios keyboard react-native


【解决方案1】:

对于android,android:windowSoftInputMode 的设置很神奇,它可能会影响键盘的行为,从而影响键盘事件。

【讨论】:

    猜你喜欢
    • 2019-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 2018-03-17
    相关资源
    最近更新 更多