Anzeige eingebaute emoji Tasten für Eingabemethode

Ich baue eine benutzerdefinierte Soft-Tastatur für Android und möchte ein Layout hinzufügen, um die emoji Tasten ähnlich wie die Standard-Android-Tastatur (AOSP) zu tun. Ich habe gesucht, aber es scheint, dass die meisten Leute versuchen, benutzerdefinierte emoji aus Bildern anzuzeigen. Ich schaue, um die eingebauten Ikonen zu zeigen, die mit Android kommen (wie unten gezeigt):

Android eingebaut emoji

  • So ändern Sie die Hinweisgröße von TextInputLayout
  • Was macht google-services.json wirklich?
  • Wie kann ich die neue Bluetooth A2DP Sink-Funktion in Lollipop vorstellen?
  • Android: Benutzerdefinierte ListAdapter-Erweiterung BaseAdapter stürzt beim Start der Anwendung ab
  • View (s) nicht sichtbar auf Android Jelly Bean
  • RxJava 2.x: Soll ich Flowable oder Single / Completable verwenden?
  • Es scheint, dass ich in der Lage sein sollte, die Unicode-Zeichen zu verwenden, um Bilder von der Tastatur zu senden, aber mein erster Versuch scheint nur die älteren Versionen des Emojis zu erzeugen. Wie kann ich das neueste Emoji unterstützen, das das Telefon behandeln kann? Auch wie zeige ich die emojis in meiner Tastatur wie im Bild oben?

  • Java 7 Sprachfunktionen mit Android
  • Holen Sie sich Header von HttpResponse in Android
  • Effizientere Möglichkeit, die Benutzeroberfläche vom Service zu aktualisieren?
  • Wie man android Toolbar Back-Taste implementiert
  • Wie soll ich in Android abgerundete Ecken geben?
  • Probleme bei der Verwendung von Jackson-Json-Bibliothek bei der Verwendung von Proguard
  • 4 Solutions collect form web for “Anzeige eingebaute emoji Tasten für Eingabemethode”

    Emoticons-Tastatur

    1) stattdessen emitos, Iam ersetzen die ImageView mit einem Asset mit einem TextView mit einer Unicode-Sequenz.

    Nach Cross-Referenzierung Unterstützte Unicode-Sequenzen sowie die Visual Unicode-Datenbank erkannte ich, dass ** u1F601 ** eine 32- Bit-Unicode-Darstellung war und die 16-Bit-Darstellung wie folgt eingestellt werden kann:

    EditText messageInput = (EditText) findViewById(R.id.message_input); messageInput.getText().append("\ud83d\ude01"); 

    2) http://android.appstorm.net/how-to/customization/how-to-use-emojis-on-your-android-device/

    Gehen Sie zu https://de.m.wikipedia.org/wiki/Emoji, um zu sehen, welche emojis Ihr Gerät mit Unicode unterstützt.

    Wie Sie wissen, welche emoji angezeigt wird, hängt von der Schriftart, die Sie verwenden, so dass die neuesten Emojis verwenden NotoColorEmoji.ttf als Schriftart für Ihre App.

    Emoticon-Unterstützung funktioniert nicht wie du denkst. Es gibt keinen universellen Satz von emojis von allen Android-Geräten unterstützt, und die emojis Ihr Gerät unterstützt kann anders auf verschiedenen Geräten zeigen. Emojis sind auf Android in 1 von 2 Möglichkeiten getan.

    1) Unicode. Was das Gerät unterstützt, hängt dann von der Schrift ab, die die App benutzt. Du schickst einfach den Unicode, genau wie du normaler Text hast, und du würdest ihn auf deiner Tastatur anzeigen, indem du diesen Charakter kennst. Für diese Methode, die Sie erraten, welche das Telefon unterstützt wird. Und es ist eine totale Vermutung, denn es hängt davon ab, welche Schriftart die App benutzt.

    2) Bild überspannt Sie legen ein ImageSpannable in den Text ein, den Sie über commitText senden. Der Vorteil von diesem ist Sie sicher, dass Sie ein Bild haben (Sie müssen die Bilder mit Ihrer App enthalten). Der Nachteil ist, dass es nicht an ein anderes Gerät gesendet werden kann, gespeichert und kann nicht in allen Apps funktionieren (sie dürfen keine übersichtlichen Objekte anzeigen).

    Vielen Dank für alle Vorschläge. Was ich zur Arbeit für ein emoji Layout in meiner benutzerdefinierten Tastatur zu arbeiten, war die folgende:

    1. In der .xml-Layoutdatei, für jeden emoji, den du hinzufügen willst, erstelle eine Zeile wie folgt: <Key android:codes="0x1F602" android:keyLabel="\ud83d\ude02"/>

    2. Wenn Sie den Schlüssel begehen, verwenden Sie: getCurrentInputConnection().commitText(String.valueOf(Character.toChars(primaryCode)), 1);

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.