1

尝试 window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN)
在活动内部使用。还尝试使用ADJUST_RESIZE参数它不起作用。

以下代码是我的活动清单

<activity android:name=".auth.AuthActivity"
          android:theme="@style/NoActionBarTheme"
          android:windowSoftInputMode="adjustResize|stateHidden">
</activity>

这是我的模拟器截图

模拟器屏幕截图
尝试了大多数解决方案。可能是我错过了正确的解决方案

4

4 回答 4

0

像这样试试

<ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">


        <EditText
            android:id="@+id/edittext1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="player1"
            android:layout_marginTop="10dp"/>

        <EditText
            android:id="@+id/edittext2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:hint="player2"/>

        <EditText
            android:id="@+id/edittext3"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:hint="player3"/>


        <EditText
            android:id="@+id/edittext4"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="player4"
            android:layout_marginTop="10dp" />
    </LinearLayout>

</ScrollView>
于 2019-04-30T07:27:48.460 回答
0

使用它的工作代码

将此代码放在创建

        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

把这个

  android:windowSoftInputMode="adjustResize"
于 2019-04-30T06:42:03.893 回答
0

您可以在设置错误时以编程方式隐藏键盘editBox

 public void hideKeyboard() {
        View view = this.getCurrentFocus();
        if (view != null) {
            InputMethodManager imm = (InputMethodManager)
                    getSystemService(Context.INPUT_METHOD_SERVICE);
            if (imm != null) {
                imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
            }
        }
    }
于 2019-04-30T05:56:50.127 回答
0

使用ScrollViewinlayout并将所有字段放入其中,ScrollView以便它们可以垂直移动。然后当键盘弹出时,字段可以轻松移动,并且不会隐藏任何内容。

于 2019-04-30T06:14:11.487 回答