виртуальная клавиатура, покрывающая EditText в Galaxy Tab



У меня есть EditText в моем приложении. моя проблема в том, что виртуальная клавиатура маскирует мой EditText во время набора текста. Я пробовал использовать разные материалы..



 <activity android:name="Myactivity"  android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation"
android:windowSoftInputMode="stateVisible|adjustResize"></activity>


Но эта проблема все еще exists...do у кого-нибудь есть идея, как я могу заставить EditText подниматься, когда я печатаю...?



Счастливое кодирование...!

596   5  

5 ответов:

Просто попробуйте сделать в файле манифеста Android:

android:windowSoftInputMode="stateVisible|adjustResize|adjustPan"

Также необходимо добавить следующий код в функцию OnCreate действия:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
Я надеюсь, что это должно сработать для вас.

У меня была такая же проблема с галактикой. Оказывается, Android позволяет изменять поведение мягкой клавиатуры. Вы можете найти документы здесь: http://developer.android.com/resources/articles/on-screen-inputs.html

Рабочая Ссылка: http://android-developers.blogspot.co.il/2009/04/updating-applications-for-on-screen.html

В принципе, есть три режима ввода:

1) панорамирование и сканирование: прокрутка окна приложения для создания сфокусированного вида видимый.

2) Изменить размер: окно приложения изменяется, чтобы соответствовать сфокусированному виду

3) Режим извлечения: только альбомная ориентация(посмотрите на картинку в документах... это объясняет это лучше, чем я когда-либо мог)

Судя по тому, что я прочитал, панорамирование и сканирование (которые установлены по умолчанию) и изменение размера не работают для вас... даже если первый должен прокрутить окно приложения, а второй должен изменить его размер, чтобы сделать редактируемый текст видимым. Вы можете разместить свой макет?

Просто добавьте
android: windowSoftInputMode= "adjustPan" для вашей активности в файле манифеста

Сохраните настройки активности, которые вы опубликовали, в частности:

Android: windowSoftInputMode= "stateVisible / adjustResize"

Попробуйте обернуть ScrollView вокруг макета, содержащего EditText. Верхняя часть ScrollView должна быть выше, чем верхняя часть SoftKeyboard. Я проверил это со многими текстами редактирования в вертикальном LinearLayout и обнаружил, что при открытии мягкой клавиатуры ScrollView изменяется на видимый экран и прокручивается по мере изменения фокуса на следующая правка текста. Также знайте, что ScrollViews внутри ScrollViews вызовет проблемы. Надеюсь, это поможет.

<ScrollView
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    >
    <LinearLayout
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:orientation="vertical"
        >        
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
        <EditText
            android:layout_width="192dp" 
            android:layout_height="wrap_content"

            android:inputType="textShortMessage"
            android:imeOptions="actionNext|flagNoEnterAction"

            android:maxLines="1"
            android:maxLength="64"
            />
    </LinearLayout>
</ScrollView>

Правка: уточнена позиция ScrollView.

В редактируемом тексте в макете.xml-файл, добавьте эту строку

android:imeOptions="flagNoExtractUi"

Comments

    Ничего не найдено.