Cuando intento escribir algo en un EditText que está en la parte inferior de la pantalla, el teclado se esconde el EditText. ¿Cómo puedo resolver este problema? A continuación es mi código xml. Estoy usando esto en un Fragmento.

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/linearLayoutTopDetails"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/linearLayoutTop"
android:layout_marginLeft="6dp"
android:layout_marginRight="6dp"
android:layout_marginTop="6dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_design1"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="80dp"
android:layout_weight="100"
android:orientation="horizontal" >
<ImageView
android:id="@+id/ImageViewProfImagePostDetail"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_marginTop="2dp"
android:layout_weight="24.84"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="60"
android:orientation="vertical" >
<TextView
android:id="@+id/textViewNamePostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Robin"
android:textSize="17sp" />
<TextView
android:id="@+id/textViewLocationPostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:drawableLeft="@drawable/location"
android:text="beijing, China" />
<TextView
android:id="@+id/textViewTimeAgoPostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" 18min ago" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="15"
android:orientation="horizontal" >
<TextView
android:id="@+id/textViewReportAbusePostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/flag"
android:paddingLeft="5dp" />
<TextView
android:id="@+id/textViewDeletePostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="15dp"
android:background="@drawable/delete"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/textViewDescriptionPostDetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="2dp"
android:singleLine="false"
android:text="Description or caption of the post"
android:textSize="17sp" />
</LinearLayout>
<ImageView
android:id="@+id/feedPostedImagePostDetail"
android:layout_width="fill_parent"
android:layout_height="200dp"
android:layout_marginTop="5dp"
android:scaleType="fitCenter"
android:visibility="gone" />
<LinearLayout
android:id="@+id/linearLayoutOptions"
android:layout_width="fill_parent"
android:layout_height="33dp"
android:layout_marginTop="2dp"
android:layout_weight="100"
android:background="@drawable/bar"
android:orientation="horizontal" >
<TextView
android:id="@+id/textViewShakePostDetail"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_marginLeft="15dp"
android:layout_weight="25"
android:drawableLeft="@drawable/like"
android:gravity="center"
android:singleLine="true"
android:text="Shake"
android:textSize="12sp" />
<TextView
android:id="@+id/textViewCommentPostDetail"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="41"
android:drawableLeft="@drawable/comment"
android:gravity="center"
android:paddingLeft="20dp"
android:text="Comment" />
<TextView
android:id="@+id/textViewSharePostDetail"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="33"
android:drawableLeft="@drawable/share"
android:gravity="center"
android:paddingLeft="20dp"
android:text="Spread" />
</LinearLayout>
</LinearLayout>
<ListView
android:id="@+id/listViewFeedsDetail1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/linearLayoutTopDetails"
android:layout_marginBottom="4dp"
android:layout_marginLeft="6dp"
android:layout_marginRight="6dp"
android:layout_marginTop="6dp" >
</ListView>
<LinearLayout
android:id="@+id/linearLayoutPostcomment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/listViewFeedsDetail1"
android:background="#FFFFFF"
android:orientation="horizontal"
android:weightSum="100" >
<EditText
android:id="@+id/editTextComment"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="80" />
<Button
android:id="@+id/buttonPostComment"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="20"
android:background="#F0F8FF"
android:text="Post" >
</Button>
</LinearLayout>
</RelativeLayout>
</ScrollView>

He tratado de resolver este problema mediante la adición de cambios a través de código, pero sin éxito.

A continuación es la imagen antes y después de hacer clic en el EditText.

Teclado de Android se esconde EditText

Teclado de Android se esconde EditText

  • scrollview no está funcionando.
  • Agregar esta propiedades : android:windowSoftInputMode=»adjustPan|adjustResize» a su etiqueta de Actividad en AndroidManifest.xml
  • posibles duplicados de Android el teclado de software cubre edittext campo
  • Creo que cualquiera de adjustPan o adjustResize debe ser utilizado, y no los dos a un tiempo. Son contrarios el uno al otro
InformationsquelleAutor Robin Royal | 2014-06-17

7 Comentarios

  1. 53

    En su manifiesto de poner esto en su particular actividad:

     android:windowSoftInputMode="adjustPan" 
    • He intentado esto, pero sin éxito. android:windowSoftInputMode=»adjustPan|adjustResize» Este código es todavía en mi manifiesto.pero todavía se esconden editText.
    • gracias @Kishan. trabajo encanto para mí.
  2. 15

    Para que usted tiene que declarar en su actividad manifeast

             <activity
    android:name=".activityname"
    android:label="@string/app_name"
    android:windowSoftInputMode="adjustPan|adjustResize" >
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    • Esta es mi actividad manifiesto de código. <actividad de android:name=»com.softech.waiguofriend.HomeActivity» android:configChanges=»keyboardHidden|orientación» android:label=»@string/title_activity_home» android:screenOrientation=»vertical» android:windowSoftInputMode=»adjustPan|adjustResize» > Este es todavía ocultar editText.
    • Es el fragmento no es una actividad.Donde debo hacerlo? Ya he puesto este código en actividad en la cual el fragmento en que se coloca.
    • puede ser que llego tarde, pero(a mi ser útil para los demás) utilizar adjustPan o adjustResize, no los dos a la vez
    • No establece dos «ajustar…» valores como el documento dice: El valor debe ser uno de los valores enumerados en la tabla siguiente, o una combinación de un «estado» más uno «ajustar…» de valor. Configuración de múltiples valores en grupo — varios «del estado…» valores», por ejemplo — tiene resultados indefinidos.
  3. 4

    Aquí es solución simple para Android EditText cuestión de esconderse detrás de SoftKeypad.
    Usar el código de AndroidManifest.xml archivo del módulo de proyecto.

    <activity
    android:name="com.example.MainActivity"
    android:label="@string/activity_main"
    android:windowSoftInputMode="adjustResize|stateHidden" />

    Este código funcionó para mí.
    Dentro del archivo de manifiesto en la actividad de la etiqueta agregar este atributo:

    android:windowSoftInputMode="adjustResize|stateHidden"

    Hay más de esos valores para este atributo (android:windowSoftInputMode) que vendrá a medida que la lista de recomendaciones. Usted puede consultar con ellos también.

  4. 3

    Declarar windowSoftInputMode=»adjustResize» en manifest.xml archivo

    <activity
    android:name=".example"
    android:theme="@style/AppTheme.NoActionBar"
    android:windowSoftInputMode="adjustResize" />

    proporcionar desplazamiento de la vista para el fichero xml de diseño

    <RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="16dp"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:paddingTop="16dp"
    android:fitsSystemWindows="true">
    <ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    android:isScrollContainer="false">
    //add edittext here...
    </ScrollView>
    </RelativeLayout>
  5. 2

    Utilizar el siguiente código donde:

    InputMethodManager ipmm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    ipmm.hideSoftInputFromWindow(url.getWindowToken(), 0);

    donde la url en mi código es:

    url = (EditText) findViewById(R.id.eT_webbrowser);

    o Intente esto:

    InputMethodManager ipmm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    ipmm.hideSoftInputFromWindow(null, 0);

    Como otra opción de probar esto: Esto siempre se esconde el suave modo de entrada de tal manera que su EditText es visible

    this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
    • Real – Si funciona para usted, por favor, acepte esto como una respuesta.
    • No es el desplazamiento de la editText arriba.
    • Yo no se usted. Pero, ¿también intente con ‘null’ como una opción para comprobar ?
    • Sí que he probado.Cuando hago clic en el EditText para escribir algo.Suave Teclado muestra pero oculta el EditText.En realidad EditText no es el desplazamiento hacia arriba en el Teclado de software.EditText se queda en la parte inferior de la pantalla.
    • Intenta esto. Editado también en mi respuesta : este.getWindow().setSoftInputMode(administrador de ventanas.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); – Ramakishna Balla
    • Todavía nada ha pasado.Gracias de todos modos
    • Npbs..extraño..¿por qué no su mostrará el código y la captura de pantalla de lo que está sucediendo exactamente ? Que será de ayuda PARA guiarte mejor
    • Me han publicado mi capturas de pantalla. Por favor, dar una mirada en ella.Gracias
    • He utilizado getWindow().setSoftInputMode(administrador de ventanas.LayoutParams.SOFT_INPUT_STATE_HIDDEN); y que funcionó! Gracias Ramakishna Balla!

Dejar respuesta

Please enter your comment!
Please enter your name here