Клавиатура Android перекрывает текст редактирования, когда гравитация установлена ​​​​в центре

Я просто хочу знать, сталкивались ли вы уже с этой проблемой в тексте редактирования, когда вы устанавливаете гравитацию в «центр», когда клавиатура перекрывает текст редактирования. Надеюсь, вы поможете мне решить эту проблему.

Я добавил свой код ниже.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/img_splash"
android:gravity="bottom"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingRight="20dp" >

<ScrollView
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

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

        <EditText
            android:id="@+id/edit_username"
            android:layout_width="fill_parent"
            android:layout_height="50dp"
            android:layout_marginBottom="13dp"
            android:background="@drawable/img_textfield"
            android:ems="10"
            android:gravity="center_vertical|center_horizontal"
            android:hint="Username"
            android:imeOptions="actionNext"
            android:maxLines="1"
            android:singleLine="true"
            android:textSize="18sp" />

        <EditText
            android:id="@+id/edit_password"
            android:layout_width="fill_parent"
            android:layout_height="50dp"
            android:layout_marginBottom="28dp"
            android:background="@drawable/img_textfield"
            android:ems="10"
            android:gravity="center_vertical|center_horizontal"
            android:hint="Password"
            android:inputType="textPassword"
            android:maxLines="1"
            android:singleLine="true"
            android:textSize="18sp" />
    </LinearLayout>
</ScrollView>

<Button
    android:id="@+id/button_login"
    android:layout_width="fill_parent"
    android:layout_height="50dp"
    android:layout_marginBottom="75dp"
    android:background="@drawable/btn_login"
    android:onClick="onClicked"
    android:text="Login"
    android:textColor="@color/white_pure"
    android:textSize="18sp" />

 </LinearLayout>

person Mobi10    schedule 12.02.2014    source источник
comment
Дело не в гравитации. вы можете установить android:windowSoftInputMode="adjustResize|adjustPan" в свою деятельность в файле manifest.xml.   -  person M D    schedule 12.02.2014
comment
Я уже пробовал это, но это толкает весь макет вверх, что не очень хорошо.   -  person Mobi10    schedule 12.02.2014
comment
попробуйте это отдельно adjustPan и adjustResize   -  person M D    schedule 12.02.2014
comment
Я также проверил эту гравитацию edittext, я создал два edittext, для edittext1 установлено значение center, а для edittext2 установлено значение по умолчанию. Эти два текста редактирования выравниваются по нижнему краю, и я всегда получаю один и тот же результат, я использую s4.   -  person Mobi10    schedule 12.02.2014
comment
Поместите оба EditText в ScrollView и попробуйте также загрузить свой макет   -  person M D    schedule 12.02.2014
comment
Я все еще получил тот же результат, он толкает весь макет вверх, что не очень хорошо.   -  person Mobi10    schedule 12.02.2014
comment
тогда что ты хочешь сделать?   -  person M D    schedule 12.02.2014
comment
Я столкнулся с этим для Android выше версии 4.4, какое-либо разрешение на этом?   -  person bmkay    schedule 28.11.2014
comment
странная ошибка в андроиде, но я могу это подтвердить. Я попытался решить эту проблему, установив гравитацию влево, прежде чем программно сфокусировать EditText, и через 300 мс после его фокусировки (используя Handler.postDelayed()), когда клавиатура видна, снова установив ее в центр. Но на некоторых устройствах это все равно не работает :(   -  person Moritz Both    schedule 11.08.2016
comment
Это ошибка Android, посмотрите на этот пост: работает после первого раза"> stackoverflow.com/questions/15317157/   -  person Oleksandr Bodashko    schedule 02.12.2016


Ответы (1)


Попробуйте использовать

android:windowSoftInputMode="adjustResize|stateHidden" в манифесте

Или поместите свой взгляд внутрь scrollview

Источник

person Viswanath Lekshmanan    schedule 12.02.2014