Почему макет исчезает и появляется снова при выборе длинного слова из EditText, которое переносится на следующую строку? - PullRequest
0 голосов
/ 22 мая 2019

Интерфейс пользователя исчезает и появляется снова при выборе текущего длинного слова, которое достигло следующей строки из EditText.

Это сложно объяснить, но, например, я набираю слово "jdbfeergerbgherhgbrehgherhbgerbgherbgerrebghrebgrbegrebgjrbgrebgjherbgbr" itпереносится на следующую строку / с.Когда я выбираю его, пока еще не добавляю пробел, например, продолжительное нажатие на него или использование жеста удаления клавиатуры Google, текст EditText и виды рядом с ним, кажется, исчезают, а затем снова появляются.

IЯ пытался удалить начальное ограничение EditText, и это сработало, но я не могу добиться нужного макета, удалив начальное ограничение.

Я попытался поместить EditText в другой контейнер, такой как CardView или LinearLayout, ноэто не помогает.

Я также пытался поместить их вне нижней панели, и это тоже не помогает.

<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.google.android.material.bottomappbar.BottomAppBar
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <androidx.appcompat.widget.AppCompatImageButton
                android:id="@+id/nav_drawer_button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintStart_toStartOf="parent" />

            <com.google.android.material.textfield.TextInputEditText
                android:layout_width="0dp"
                android:layout_height="wrap_content" 
                android:inputType="textCapSentences|textMultiLine"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toStartOf="@+id/encrypt_button"
                app:layout_constraintStart_toEndOf="@+id/nav_drawer_btn"
                app:layout_constraintTop_toTopOf="parent" />

            <androidx.appcompat.widget.AppCompatImageButton
                android:id="@+id/encrypt_button"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent" />

        </androidx.constraintlayout.widget.ConstraintLayout>

    </com.google.android.material.bottomappbar.BottomAppBar>

</androidx.coordinatorlayout.widget.CoordinatorLayout>

Я удалил отступыи маржа, поскольку я считаю их ненужными.

1 Ответ

0 голосов
/ 22 мая 2019

Я обнаружил, что добавление android:windowSoftInputMode="adjustResize" в манифест Android внутри тега activity решает проблему.

...