windowSoftInputMode = "AdjustResize | StateHidden" Ошибка Editexts наложения клавиатуры - PullRequest
1 голос
/ 30 апреля 2019

Пробовал с помощью window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN)
внутри действия. Также пытался с ADJUST_RESIZE Param Это не работало.

Следующий код - мой манифест для действия

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

Это мой скриншот эмулятора

Emulator screen Shot
Испытано большинство решений. Может быть, яотсутствует правильный

Ответы [ 4 ]

0 голосов
/ 30 апреля 2019

Попробуйте вот так

<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>
0 голосов
/ 30 апреля 2019

Используйте ScrollView в layout и поместите все свои поля в ScrollView, чтобы они могли двигаться вертикально. Затем, когда клавиатура выскочит, поля могут легко перемещаться, и ничто не будет скрыто.

0 голосов
/ 30 апреля 2019

Используйте этот рабочий код

поместите этот код при создании

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

введите манифест

  android:windowSoftInputMode="adjustResize"
0 голосов
/ 30 апреля 2019

вы можете скрыть клавиатуру программно, когда вы установите ошибку на 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);
            }
        }
    }
...