【发布时间】:2017-03-02 01:42:33
【问题描述】:
我现在正在解决键盘将应用程序推到视图之外的常见问题。
android:windowSoftInputMode="adjustResize" 设置不起作用。
现在我手动根据键盘调整视图大小,如下所示:
keyboardWillShow(e) {
setTimeout(()=> {
this.keyboardOffset = e.endCoordinates.height;
}, 500)
}
keyboardWillHide(e) {
this.keyboardOffset = 0;
}
///...
const resultingHeight = windowHeight - this.keyboardOffset - Navigator.NavigationBar.Styles.General.TotalNavHeight;
viewStyle = {
height: resultingHeight
};
这几乎可行。但我的问题是应用程序被推到视图之外,然后keyboardWillShow 被触发并正确调整视图大小,然后什么也没有发生。显示键盘后,Android 不会更新布局。
编辑:SO 上的其他帖子没有帮助,因为 adjustResize 设置不起作用,我使用 react-native 而不是原生 android。
【问题讨论】:
-
这不是重复的。我也试过了,AndroidManifest 中的 windowSoftInputMode 都没有解决它。只是当我使用 android:windowSoftInputMode="adjustNothing" 时,视图不会消失,但同样的问题是键盘与 textInput 重叠......
-
如果您可以发布该视图的 xml 布局,如果您正在使用它,我可以尝试提供帮助(对不起,我什至不知道 react-native 的事情)。
-
android:windowSoftInputMode="adjustResize"怎么样,啊。你已经试过了。比您在 xml 中的根布局具有错误的属性。如果你有RelativeLayout,设置这个<RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" > -
@longilong 我没有描述布局的 xml。这是本机反应。
-
upps,对于垃圾邮件,抱歉,以前从未听说过该框架...
标签: android keyboard react-native