/ / EditText sendo sobreposta pelo teclado virtual - android

EditText sendo sobreposta pelo teclado virtual - android

Por que é que quando eu aperto no teclado oupressione o botão de retorno, o EditText não é animado novamente para a parte superior do teclado. Então, na segunda vez que o teclado aparecer, o layout não será redimensionado.

Aqui está o meu 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"/>

Aparentemente, definir a gravidade é a causa. Mas isso é essencial se você quiser centralizar o texto ou a dica.

-EDITAR-

Depois de ler os documentos sobre windowSoftInputMode e adjustPan parece estar apto para o trabalho, mas não funciona com o android: gravidade = "centro"

Respostas:

1 para resposta № 1

adicione a seguinte linha à tag de atividade no arquivo de manifesto android:

android:windowSoftInputMode="adjustPan|adjustResize"

O que você adicionou é para lidar com as alterações de configuração.

Exemplo:

<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 para resposta № 2

definir o seguinte atributo em <activity> de AndroidManifest.xml

android:windowSoftInputMode="stateVisible|adjustResize"

0 para resposta № 3

use o seguinte atributo em activity do AndroidManifest.xml

<activity
android:name="com.domain.app.MyActivity"
android:windowSoftInputMode="adjustResize|stateHidden"
android:configChanges="keyboard|orientation|screenSize"
android:screenOrientation="portrait" />