弹出软键盘时保持视图组可见

Keep viewgroup visible when soft keyboard pops up

通常,在处理软键盘时,我们可以指定在隐藏文本字段时调整大小或向上平移的布局。

我有以下布局:

由于它的创建方式(卡片底部的空白较大),调整大小效果不佳,因为它会在键盘和卡片之间留下很大的间隙。

然而,如果用户名文本字段获得焦点,则平移将隐藏密码文本字段。

有没有办法指定视图应平移多远,以便平移到 FAB?

我能想到的唯一其他解决方案是根据宽度测量变化来更改我的填充,但这听起来像是一个有点老套的解决方案

您使用软键盘的唯一选择是平移、调整大小或什么都不做。没有选项可以影响平移的距离。

如果用户名字段获得焦点,则密码字段可能隐藏也可能不隐藏。这取决于屏幕的大小、键盘的高度以及您在该设备上的确切布局。但是您最好的解决方案可能是将用户名的操作键设置为 ACTION_NEXT 并在旁边定义操作以聚焦密码字段。

另一个好的解决方案是去掉卡片上方的很多负面内容 space - 除非那里有你没有向我们展示的东西,否则它会浪费 space 并放置卡片屏幕上的更高位置将解决您所有的问题。

您应该添加

<activity android:windowSoftInputMode="stateVisible|adjustResize"/>

在你的清单中 Activity 我想。现在无法验证。 在 Android Developers Documentation

查看更多信息