6

Possiedo SherlockFragmentActivity e SherlockFragment all'interno di un TabManager. In questo frammento ho RadioButton, CheckBox, un pulsante e un EditText in un LinearLayout. La tastiera a volte non risponde quando si preme EditText.Come mai la tastiera virtuale Android non risponde a EditText?

In un AVD 2.1 la tastiera risponde in modo incoerente, in un AVD 4.0 la tastiera non risponde affatto e su un dispositivo la tastiera risponde in modo incoerente. A volte premendo gli altri oggetti si attiva la possibilità di mostrare la tastiera.

Ecco l'XML per l'EditText:

<EditText  android:id="@+id/EditText1" 
        android:layout_width="100dp" 
        android:layout_height="wrap_content" 
        android:inputType="number" 
        android:text="20" > 

Sono confuso dell'attività incoerente più che il fatto che non funziona sulla 4.0 AVD. Qualsiasi suggerimento sul perché questo sta accadendo o un modo per mostrare la tastiera sarebbe fantastico.

+1

Buono a sapersi è un problema per più di me stesso. Pensavo che la mia programmazione fosse una merda. Certo, vorrei poter trovare riferimenti nella documentazione per le istruzioni dirette su cosa fare poiché diventa difficile testare altre versioni sapendo che esiste la possibilità di trovare bug solo all'interno dell'emulatore. – JRomero

+0

Sto riscontrando questo problema adesso! Ho rapporti sulla mia app di produzione che la tastiera virtuale non si sta aprendo. Non riesco a replicarlo su NULLA che ci provo, ma so che il problema esiste perché un utente mi ha mostrato. – AutoM8R

risposta

5

È possibile registrare un listener punto di riferimento per il vostro EditText e aperto tastiera virtuale quando si ottiene attenzione:

edit_Text.setOnFocusChangeListener(new OnFocusChangeListener() { 
@Override 
public void onFocusChange(View v, boolean hasFocus) { 
    if(hasFocus){ 
     ((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)) 
.showSoftInput(edit_Text, InputMethodManager.SHOW_FORCED); 
    }else 
     Toast.makeText(getApplicationContext(), "lost the focus", 2000).show(); 
} 
}); 

Edit:
Per emulator, penso che non sia guaranteed.Really non l'ho fatto qualsiasi modo per apparire programmaticamente con la tastiera soft. Alcune volte appare e in alcune occasioni non.In emulatore con Android 4.0.3, è possibile vedere un simbolo nella barra di notifica anziché la tastiera virtuale visualizzata:
enter image description here

un'occhiata a:
Event for Handling the Focus of the EditText
Forcing the Soft Keyboard open

+0

Grazie mille. Funziona sul mio dispositivo costantemente ora. Sebbene l'AVD 4.0 non avvii ancora la tastiera. Vado a provarlo su un dispositivo con ICS e ti faccio sapere se funziona ancora correttamente. – piz

+0

@piz Si ​​prega di vedere le mie modifiche. – hasanghaforian

+0

funziona bene in 4.0.4 –

Problemi correlati