2016-10-13 32 views
13

Jak widzimy, sposobem na zabezpieczenie domyślnych emotikonów na Androidzie jest użycie następujących informacji w tekście wejściowym.Android: programowo otwierać miękką klawiaturę w widoku emotikonów

android:inputType="textMultiLine|textShortMessage" 

Kiedy szukam, nie mogę znaleźć sposobu, aby to zrobić poprzez Javę. Chodzi mi o to, kiedy klawiatura jest otwarta, a na karcie użytkownika znajduje się przycisk przełączający widok emoji i normalny widok klawiatury.

Niestandardowa klawiatura Emoji.

Już to zaimplementowałem, ale byłoby znacznie lepiej i lżejszy używać Emojis już na urządzeniu do post kik-kat.

Google przełącza się między tymi widokami.

W Google Allo naciśnięcie ikony emoji wewnątrz widoków zmiany formatu editText.

+0

spróbować http://stackoverflow.com/questions/25167428/android-keyboard-with-emoji http://stackoverflow.com/questions/22418714/show-emoji-keyboard-on-android http://stackoverflow.com/questions/16768930/implementations-of-emoji-emoticon-view-keyboard-layouts –

Odpowiedz

2

Może to pomoże:

https://blog.swiftkey.com/tech-blog-android-input-method-subtypes/

Istnieje coś takiego jak emotikon podtyp jak widać po linku poniżej.

public static RichInputMethodSubtype getEmojiSubtype() 

https://android.googlesource.com/platform/packages/inputmethods/LatinIME/+/master/java/src/com/android/inputmethod/latin/RichInputMethodSubtype.java

+0

Ok ket mnie rzucić okiem na to ... – Relm

+0

Czy to pomogło? Daj mi znać. – Reymanx

+0

Nie można go uruchomić, może powinieneś napisać więcej kodu na swoją odpowiedź, aby uczynić go prostszym nawet dla mniej zaawansowanych programistów. – Relm

1

TextView

Korzystanie TextView na input type nie zawiera tego, co chcesz ...

Klawiatury

Wydaje można pokazać użytkownikowi listę dostępne keyboards. (te, które są dostępne na tym urządzeniu)

A z tym, sprawdź, czy jest dostępny Emoji Key Board. Ale wydaje się, że potrzebuje przynajmniej systemu Android 4.1.

Siła Część Key Nadzorczej

Not possible miarę widzę. Możesz wydawać im się disable.

* Chciałbym pokazać, jak to zrobić, wygląda na to, że można to zrobić z miłością. Ale moje google-fu nie pokazuje nic blisko :(

+0

Jeśli spojrzałeś na Google Allo, jak myślisz, jak to robią? Wygląda na to, że nie używają niestandardowej implementacji emoji, ale rodzimej. – Relm

+0

Czy możesz podać link do Google Allo, gdzie pokazuje on pożądane zachowanie? – Flummox

+0

Wystarczy pobrać Allo i kliknąć ikonę emoji. https://allo.google.com/ – Relm

2

Po wypróbowaniu na chwilę nie osiągnąć ten cel nawet injecting a keyevent.

Patrząc w Google Allo, który wygląda jak implementacji niestandardowych. Mam switftkey Klawiatura tematyczna i na KitKat Moto G (1. gen) jest bardzo zauważalna, testowałem także na Marshmallow Moto G (2nd gen) z natywną klawiaturą, ale skurczyłem się i widać, że to nie jest prawdziwa miękka klawiatura:

enter image description here

Myślę, że nie ma sposobu, aby osiągnąć to bez custom emoji's implementation.