2012-06-20 13 views
12

Mi código XML androide es aquí,moverse hacia arriba la vista de texto sólo cuando el teclado virtual abierta en

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:id="@+id/mainlayout" > 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:id="@+id/toplayout"> 
    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="100dp" 
     android:src="@drawable/bg" /> 
</LinearLayout> 


<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:id="@+id/bottomlayout"> 
    <EditText 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Enter value" /> 
</LinearLayout> 

cuando yo haga, lo tengo como este,

enter image description here

después ejecutar, cuando ingreso el valor en editar texto, el teclado virtual está abierto y todo el mainlayout se desplaza hacia arriba, obtuve así

enter image description here

Pero i excepción, el diseño superior no para desplazarse hacia arriba, sólo el diseño de fondo o TextView desplazarse hacia arriba. Espero esto, enter image description here

cómo desplazar solo la vista de edición cuando se abre el teclado virtual. ?

+1

Try añadiendo androide: windowSoftInputMode = "adjustPan | adjustResize" para la actividad en el archivo de manifiesto. – vrs

Respuesta

21

Pruebe esto; tal vez es útil. Ajustar el archivo manifest

<activity 
     android:windowSoftInputMode="adjustResize"    
     android:name=".youractivity" android:label="@string/app_name" > 

@Ganesh cambia manifest como por encima de su código Activity también trabaja

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 

    <RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/toplayout"> 
    <ImageView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:src="@drawable/ic_launcher" /> 
    <EditText 
     android:layout_width="fill_parent" 
     android:layout_alignParentBottom="true" 
     android:layout_height="wrap_content" 
     android:hint="Enter value" /> 

    </RelativeLayout> 
</LinearLayout> 
+0

Gracias amigo. Funciona bien. – RVG

+0

¿Por qué queremos cambiar el tamaño de la vista cuando se inicia el teclado virtual? –

Cuestiones relacionadas