键盘启动时调整滚动视图

时间:2012-09-14 10:19:39

标签: android keyboard scrollview android-keypad

我有一个带有表单的活动。因为表格很长,所以我使用了滚动视图。

问题是当键盘启动时,scrollview不会改变。键盘与滚动视图的最后一部分重叠。

如何确保键盘位于滚动视图下方并调整滚动视图以适应其上方的空间?

与此同时,有没有办法确保按键“上一个”和“下一个”也在键盘中?

7 个答案:

答案 0 :(得分:13)

在应用程序的清单文件中,将以下内容添加到所需的<activity /> -

 android:windowSoftInputMode="stateAlwaysHidden|adjustResize|adjustPan"

答案 1 :(得分:9)

您需要在AndroidManifest.xml文件中添加 android:windowSoftInputMode =“adjustResize”

答案 2 :(得分:3)

如果您使用片段,则只需使用代码来控制它,如下所示

context.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

答案 3 :(得分:2)

对于ScrollView,我想对Activity文件中的AndroidManifest.xml使用以下软输入模式:

android:windowSoftInputMode="adjustPan"

除了其他选项之外,这对我来说是最好的。

答案 4 :(得分:1)

在活动代码

下的清单中添加以下代码行
android:windowSoftInputMode="adjustResize"

答案 5 :(得分:0)

请注意,如果您使用的是CoordinatorLayout,请确保将android:fitsSystemWindows =“ false”设置为能够使其适用于“ adjustResize”

以上答案还不够!

查看本文

https://code.luasoftware.com/tutorials/android/move-layout-when-keyboard-shown/

答案 6 :(得分:0)

  1. <ScrollView ... android:layout_height="fill_parent" android:fillViewport="true" android:fitsSystemWindows="true" />
  2. 清单 <activity ... android:windowSoftInputMode="stateHidden|adjustResize" /> 这对我有用