2011-10-23 13 views
7

tengo una actividad con cuatro textos de edición y quiero ocultar el teclado cuando los usuarios terminan de usar uno de los cuatro textos de edición. si hago clic en entrar en el teclado, se enfocará en otro texto de edición y el teclado aún permanecerá, pero necesito ocultar el teclado, para usar solo un texto de edición y no necesariamente el otro. Esta es xml:Cómo ocultar el teclado en la tecla Intro

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" android:background="@drawable/sfondo"> 
<LinearLayout android:id="@+id/linearLayout1" 
    android:layout_width="match_parent" android:layout_height="wrap_content"> 
    <ImageButton android:id="@+id/backPersonalizza" 
     android:src="@drawable/back" android:background="@null" 
     android:layout_marginTop="10dip" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:layout_marginLeft="5dp"></ImageButton> 
    <TextView android:layout_height="wrap_content" 
     android:gravity="center" 
     android:textColor="@android:color/black" android:id="@+id/testoSuggerimenti" 
     android:text="Personalizza il testo e le icone. Clicca su una delle icone e scegli l'immagine preferita" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:layout_width="wrap_content" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="5dp" 
     ></TextView> 
</LinearLayout> 
<LinearLayout android:id="@+id/linearLayout2" 
    android:layout_height="wrap_content" android:layout_width="match_parent" 
    android:orientation="vertical" android:layout_marginTop="20dp"> 
    <LinearLayout android:id="@+id/linearLayout3" 
     android:layout_height="wrap_content" android:layout_width="match_parent"> 
     <EditText android:layout_height="40dp" android:id="@+id/editT1" 
      android:layout_width="115dp" android:layout_marginLeft="32dp" 
      android:layout_marginRight="25dp" android:gravity="center" 
      android:ellipsize="end" android:singleLine="true"> 
      <requestFocus></requestFocus> 
     </EditText> 
     <EditText android:layout_height="40dp" android:id="@+id/editT2" 
      android:layout_width="115dp" android:layout_marginRight="10dp" 
      android:gravity="center" android:ellipsize="end" 
      android:layout_marginLeft="10dp" android:singleLine="true"></EditText> 
    </LinearLayout> 
    <LinearLayout android:layout_weight="1" android:id="@+id/linearLayout4" 
     android:layout_height="match_parent" android:layout_width="wrap_content"> 
     <ImageButton android:layout_height="wrap_content" 
      android:layout_width="wrap_content" android:src="@drawable/tasto1" 
      android:id="@+id/tastoMod1" android:background="@null" 
      android:layout_marginLeft="30dp" android:layout_marginTop="-5dp"></ImageButton> 
     <ImageButton android:layout_height="wrap_content" 
      android:layout_width="wrap_content" android:src="@drawable/tasto2" 
      android:id="@+id/tastoMod2" android:background="@null" 
      android:layout_marginLeft="30dp" android:layout_marginTop="-5dp"></ImageButton> 
    </LinearLayout> 
</LinearLayout> 
<LinearLayout android:id="@+id/linearLayout5" 
    android:layout_height="wrap_content" android:layout_width="match_parent" 
    android:orientation="vertical"> 
    <LinearLayout android:id="@+id/linearLayout6" 
     android:layout_height="wrap_content" android:layout_width="match_parent"> 
     <EditText android:layout_height="40dp" android:id="@+id/editT3" 
      android:layout_width="115dp" android:layout_marginLeft="32dp" 
      android:layout_marginRight="25dp" android:gravity="center" 
      android:ellipsize="end" android:singleLine="true"></EditText> 
     <EditText android:layout_height="40dp" android:id="@+id/editT4" 
      android:layout_width="115dp" android:layout_marginRight="30dp" 
      android:gravity="center" android:ellipsize="end" android:singleLine="true" 
      android:layout_marginLeft="10dp"></EditText> 
    </LinearLayout> 
    <LinearLayout android:id="@+id/linearLayout7" 
     android:layout_height="wrap_content" android:layout_width="match_parent"> 
     <ImageButton android:layout_height="wrap_content" 
      android:layout_width="wrap_content" android:src="@drawable/tasto3" 
      android:id="@+id/tastoMod3" android:background="@null" 
      android:layout_marginLeft="30dp" android:layout_marginTop="-5dp"></ImageButton> 
     <ImageButton android:layout_height="wrap_content" 
      android:layout_width="wrap_content" android:src="@drawable/tasto4" 
      android:id="@+id/tastoMod4" android:background="@null" 
      android:layout_marginLeft="30dp" android:layout_marginTop="-5dp"></ImageButton> 
    </LinearLayout> 
</LinearLayout> 

¿me pueden ayudar?

Respuesta

18

no estoy seguro, pero usted debe tratar este código: -

youredittext.setOnEditorActionListener(new TextView.OnEditorActionListener() { 

    @Override 
    public boolean onEditorAction(TextView v, int keyCode, KeyEvent event) { 
     if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) { 
      // hide virtual keyboard 
      InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
      imm.hideSoftInputFromWindow(youredittext.getWindowToken(), 0); 
      return true; 
     } 
     return false; 
    } 
}); 

espero que esto ayudará ..

+0

lo intentaré! pero de esta forma solo anulará la tecla enter, ¿no será cierto? – JackTurky

+0

He editado mi respuesta y creo que para intentar adjuntar el OnEditorActionListener a todos ellos. – Uttam

+0

sessionTag? es el texto de edición? – JackTurky

0

La mejor manera de hacer esto, es agregar los siguientes códigos en el archivo XML

android:imeOptions="actionDone" 

no me entiendo por qué la gente códigos sugerencia java si tienen mejor opción

Cuestiones relacionadas