2015-04-14 2 views
0

Почему это происходит, когда я нажимаю на клавиатуре или нажимаю кнопку «Назад», EditText не анимируется снова в верхней части клавиатуры. Итак, во второй раз, когда клавиатура появляется, макет не изменяется.Редактирование текста, накладываемого мягкой клавиатурой

Вот мой XML:

<EditText 
android:id="@+id/share_caption" 
android:maxLines="1" 
android:singleLine="true" 
android:gravity="center" 
android:layout_width="fill_parent" 
android:layout_height="40dp" 
android:background="#ffffffff" 
android:textSize="18sp" 
android:textCursorDrawable="@drawable/cursor_color" 
android:textColor="#ff696969"/> 

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

-EDIT-

После прочтения документации о windowSoftInputMode и adjustPan, кажется, подходит для работы, но это не работает с андроида: гравитационным = «центр»

+0

Места расположения вашей точки зрения прокрутки и использовать 'android: windowSoftInputMode =" adjustResiz e "для этой активности в Manifest –

+0

Используйте' android: windowSoftInputMode = "stateHidden | adjustPan" 'для вашей конкретной деятельности в вашем файле манифеста. – Piyush

ответ

1

добавить следующие строки к деятельности тег в файле манифеста android:

android:windowSoftInputMode="adjustPan|adjustResize" 

Вы добавили для обработки изменений конфигурации самостоятельно.

Пример:

<activity 
    android:name=".MainActivity" 
    android:label="@string/app_name" 
    android:screenOrientation="portrait" 
    android:windowSoftInputMode="adjustPan|adjustResize" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 
0

определяет следующий атрибут в <activity> из AndroidManifest.xml

android:windowSoftInputMode="stateVisible|adjustResize" 
0

использовать следующий атрибут в activity из AndroidManifest.xml

<activity 
      android:name="com.domain.app.MyActivity" 
      android:windowSoftInputMode="adjustResize|stateHidden" 
      android:configChanges="keyboard|orientation|screenSize" 
      android:screenOrientation="portrait" /> 
Смежные вопросы