Ich entwickle eine SMS-Absender-App und möchte die Sprache kennen, die der Benutzer benutzt. Wenn der Benutzer eine Nachricht eintippt, wie kann ich dann die Sprache kennen, die er benutzt?Wie kann ich die Tastatursprache kennen? (en/fr)
Antwort
erhalten den Manager Eingabetyp unter Verwendung:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
dann entscheiden, was davon zu bekommen, die nächsten Methoden verwenden:
zusammen mit diesem um das Gebietsschema des Eingabetyps zu erhalten:
http://developer.android.com/reference/android/view/inputmethod/InputMethodSubtype.html#getLocale()
Hallo Mann, aber diese Lösung in API 11 verfügbar, und ich möchte das für Android verwenden 2.3! wie Sie Ihre Idee für niedrigere Versionen vor API 11 verwenden. – NrNazifi
guter Punkt. Entschuldigung, dass ich es vermisse. Vielleicht ist es möglich, aus dem Android-Code zu lesen und zu sehen, ob es einen Weg gibt, um es für ältere Versionen zu überwinden. –
Es ist nicht möglich, die aktuelle Tastatursprache abzurufen. Android erlaubt nicht das Abrufen der aktuell konfigurierten Sprache, es gibt keine API.
Sie können Tastatursprache erhalten zuerst die locale der Gerätetastatur zu erfassen und dann bekommen die Locale
Objekt von ihm. Beispiel:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
InputMethodSubtype ims = imm.getCurrentInputMethodSubtype();
String localeString = ims.getLocale();
Locale locale = new Locale(localeString);
String currentLanguage = locale.getDisplayLanguage();
Hier gibt currentLanguage
Ihre Tastatursprache. Hoffe das hilft.
Was sollen wir tun, wenn ims null ist? – Patzu
- 1. Wie bekomme ich die aktuelle Tastatursprache?
- 2. Wie kann ich die nächste Zufallszahl kennen?
- 3. Wie ios Tastatursprache
- 4. Kann ich die Revisionsnummer eines Commits kennen?
- 5. Wie kann ich den Servicenamen kennen?
- 6. Wie kann ich die Online-Benutzer meiner Website kennen?
- 7. Wie kann ich die Version von pip selbst kennen?
- 8. Wie kann ich die Größe der Benutzerkontrolle kennen?
- 9. Wie kann ich die Speichernutzung in C++ kennen?
- 10. Wie kann ich die installierte Version von pylab kennen?
- 11. Wie kann ich die Zeitzone meiner Website kennen Host
- 12. Wie kann ich die IP-Adressen unter einem Router kennen
- 13. Wie kann ich die aktivierten Funktionen einer Matplotlib-Installation kennen?
- 14. Get Tastatursprache unter Windows
- 15. Calabash - iOS Simulator kann keine Tastatursprache auswählen
- 16. Einstellen der iPhone-Tastatursprache
- 17. Wie System kann Geschäftsjahr kennen?
- 18. Wie kann ich die xdebug Version, die ich installiert habe, kennen?
- 19. kann ich die Thread runnable Klassenattribute in Java kennen?
- 20. Wie kann ich mein System kennen? Gradle buildToolsVersion
- 21. Wie kann ich alle abgeleiteten Klassen eines Elternteils kennen?
- 22. Wie kann ich den Mount-Pfad von Router Express kennen?
- 23. Wie kann ich alle Plugin-Namen in CKEditor kennen?
- 24. Wie kann ich ein Array initialisieren, ohne es zu kennen?
- 25. Wie kann man die Sicherheit oder Penetrationstestabdeckung kennen?
- 26. Wie kann ich den Projekttyp eines VS C# -Projekts kennen?
- 27. Gibt es einen Delegatanruf, wenn sich die iOS-Tastatursprache ändert?
- 28. Wie kann ich die möglichen Parameter kennen, die von einer anderen Android-Anwendung gelesen werden können?
- 29. Wie kann ich die Bandbreite des Benutzers kennen, um die bestmögliche Version meiner Webanwendung bereitzustellen?
- 30. Wie kann ich die Namensliste der CA-Subjekte kennen, die im SSL-Kontext geladen wurde?
http://developer.android.com/reference/android/view/inputmethod/InputMethodManager.html#getCurrentInputMethodSubtype%28%29 – hakiko