6

Mam SherlockFragmentActivity i SherlockFragment, który jest w TabManager. W tym Fragmentie mam RadioButtons, CheckBox, Button i EditText w LinearLayout. Klawiatura czasami nie odpowiada po naciśnięciu EditText.Dlaczego klawiatura z Androidem nie reaguje na EditText?

W wersji 2.1 AVD klawiatura reaguje niespójnie, w wersji 4,0 AVD klawiatura nie reaguje w ogóle, a na klawiaturze klawiatura reaguje niespójnie. Czasami naciśnięcie innych obiektów aktywuje możliwość wyświetlenia klawiatury.

Oto XML dla EditText:

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

jestem zdezorientowany aktywności niezgodny bardziej niż fakt, że to nie działa na 4.0 AVD. Wszelkie sugestie, dlaczego tak się dzieje lub sposób na pokazanie klawiatury, byłyby świetne.

+1

Dobrze znamy to problem dla więcej niż tylko sam. Myślałem, że moje programy są gówniane. Na pewno chciałbym znaleźć odniesienie w dokumentacji dla bezpośrednich instrukcji, co zrobić, ponieważ trudno jest przetestować inne wersje wiedząc, że istnieje potencjał znalezienia błędów tylko w emulatorze. – JRomero

+0

Mam teraz ten problem! Mam raporty na temat mojej aplikacji produkcyjnej, które nie otwierają się na miękkiej klawiaturze. Nie mogę tego zreplikować na ŻADNEJ próbie, ale wiem, że problem istnieje, ponieważ użytkownik POKAZUŁO mnie. – AutoM8R

Odpowiedz

5

Można zarejestrować ostrości słuchacza do EditText i otwartej miękkiej klawiatury, gdy uzyskać ostrości:

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:
Dla emulator, myślę, że nie jest guaranteed.Really ja nie jakikolwiek sposób, aby pojawić się miękko na klawiaturze programowo.Niektóre razy pojawia się, a czasami nie. W emulatorze z Androidem 4.0.3, można zobaczyć symbol na pasku powiadomień zamiast pojawiającej się miękkiej klawiatury:
enter image description here

Spójrz:
Event for Handling the Focus of the EditText
Forcing the Soft Keyboard open

+0

Wielkie dzięki. Działa teraz na moim urządzeniu konsekwentnie. Chociaż AVD 4.0 nadal nie uruchamia klawiatury. Mam zamiar wypróbować to na urządzeniu z ICS i poinformować, czy nadal działa poprawnie. – piz

+0

@piz Zobacz moje edycje. – hasanghaforian

+0

działa poprawnie w wersji 4.0.4 –

Powiązane problemy