【发布时间】: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