W Androidzie, w jaki sposób uczynić klawiaturę urządzenia zawsze widoczną w aplikacji? Górna część wyświetla zawartość, którą aplikacja chce renderować, a dolna część wyświetla zawsze klawiaturę.Android: jak ustawić klawiaturę zawsze widoczną?
Odpowiedz
Dodaj androida: windowSoftInputMode = „stateAlwaysVisible” do aktywności w pliku AndroidManifest.xml:
<activity android:name=".MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateAlwaysVisible" />
W mojej aplikacji testowej to pokazuje klawiaturę Po uruchomieniu aplikacji, choć nie jest ona tam stała, ale można zwolnić, naciskając przycisk Wstecz.
Aby upewnić się, że klawiatura jest zawsze widoczna, konieczne może być utworzenie własnej klawiatury w ramach interfejsu użytkownika aplikacji. Oto poradnik, aby pokazać, jak to zrobić z KeyboardView: http://www.fampennings.nl/maarten/android/09keyboard/index.htm
Musisz mieć EditText
w układzie i które muszą stopniu EditText
klasy bazowej. następnie zastąp metodę onKeyPreIme()
i zwróć True. Teraz twoja klawiatura będzie zawsze widoczna i nie będzie mogła zostać odrzucona klawiszem wstecz.
Uwaga: Ze względu na metodę onKeyPreIme()
zwraca true
nie można zamknąć aplikację używając przycisku wstecz.
Przykład:
public class CustomEdit extends EditText {
public CustomEdit(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
Log.e("Log", "onKeyPreIme");
return true;
//return super.onKeyPreIme(keyCode, event);
}
}
znalazłem sposób, który pracuje dla mnie, aby utrzymać klawiaturę widoczny po edycji w moim myEditText
dziedzinie klasie EditText
. Sztuką jest, aby zastąpić metodę onEditorAction
tak, że zwraca true
myEditText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
return true;
}
});
albo mieć onEditorAction
zwrot true
dopiero po "Gotowe" key-click (IME_ACTION_DONE
) inaczej false
myEditText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(actionId==EditorInfo.IME_ACTION_DONE){
Log.i(LOG_TAG, "IME_ACTION_DONE");
return true;
}
return false;
}
});
(patrz również this answer na metodzie onEditorAction
)
Dodanie android:windowSoftInputMode="stateAlwaysVisible
do pliku Manifest pomogło aby klawiatura była wyświetlana podczas uruchamiania, ale nie zapobiegała jej ponownemu zniknięciu po kliknięciu przycisku "Gotowe" po edycji.
- 1. Android odrzuci klawiaturę
- 2. NumberPicker w AlertDialog zawsze aktywuje klawiaturę. Jak to wyłączyć?
- 3. jak ustawić pasek przewijania siatki zawsze widoczny Android 4.0.3
- 4. Android: AutoCompleteTextView ukryj miękką klawiaturę
- 5. Jak znaleźć widoczną część kontrolki?
- 6. Jak ustawić pasek nawigacji zawsze na górze?
- 7. Jak ustawić ostrość (i wyświetlić klawiaturę) na moim EditText programowo
- 8. Nakładka na klawiaturę z klawiaturą Android
- 9. Android: Ukryj klawiaturę po kliknięciu przycisku
- 10. Android: Pokazuje klawiaturę ukrywa zawartość listview
- 11. Android Ukryj klawiaturę podczas zmiany fragmentów
- 12. jak wyświetlić klawiaturę telefoniczną
- 13. Zachowaj widoczną kolumnę lewą I przewijaną
- 14. Jak zrobić ShadowCamera widoczną w three.js r73?
- 15. Jak otworzyć klawiaturę po kliknięciu przycisku w systemie Android?
- 16. Jak pokazać miękką klawiaturę doskonale w fragmencie w systemie Android?
- 17. Jak opracować niestandardową klawiaturę programową dla systemu Android?
- 18. EditText ukryty przez klawiaturę, gdy android: gravity = "center" - Android
- 19. Android jak ustawić windowanimation programowo
- 20. Android: Jak programowo ustawić drawablePadding?
- 21. Android - jak ustawić półprzezroczysty układ?
- 22. HW KBD udało się ustawić (null) jako klawiaturę iOS
- 23. Jak ustawić moją osobistą klawiaturę jako standardowe wejście w mojej aplikacji
- 24. Jak ukryć klawiaturę klawisza Enter
- 25. Android: NeighboringCellInfo zawsze puste!? czemu?
- 26. Jak zachować kontrolę widoczną w formularzu podczas korzystania z rozdzielacza?
- 27. Android WebView canGoBack zawsze prawdziwy
- 28. Jak wyświetlić klawiaturę przez naciśnięcie klawisza NSButton?
- 29. Jak automatycznie otworzyć klawiaturę na UITextField?
- 30. Jak zamknąć klawiaturę na UIWebView?
Próbowałem użyć kodu źródłowego Androida i mogę przeciągnąć klawiaturę, ale nie jestem pewien, którą część powinienem zmodyfikować, aby wyłączyć ukrywanie. Patrzę na klasę pod LatinIME.java. Próbowałem dodać inputView z tego kodu Google do WindowManager.addView. – LittleFunny
@Simon Zobacz moją aktualizację mojej odpowiedzi. Prawdopodobnie chcesz użyć programu KeyboardView. – Intrications