2017-07-21 2 views
0

Ich möchte herausfinden, wie viele Emojis der Benutzer in eine EditText eingegeben hat. Wenn der Benutzer nur Emojis eingibt und 3 oder weniger verwendet, möchte ich diese Zeichenfolge in der App mit einer größeren Schriftart anzeigen können.Get Emoji Count In String

Im Moment bin ich auf diesen Beitrag gestoßen, der hilft festzustellen, ob Emojis in der Zeichenfolge vorhanden sind, aber ich konnte nicht herausfinden, wie die Anzahl der Emojis zu zählen ist.

Detecting if a character in a String is an emoticon (using Android)

Wer weiß, wie ich die Emoji-Zählwert von einem String bekommen?

Antwort

2
int emojiCount = 0; 

    for (int i = 0; i < yourString.length(); i++) { 
    int type = Character.getType(yourString.charAt(i)); 
     if (type == Character.SURROGATE || type == Character.OTHER_SYMBOL) { 
     emojiCount++; 
     } 
    } 

return emojiCount/2; 
+0

Werden andere merkwürdige Unicode-Zeichen als Emoji gezählt? – johnchen902

+0

Ja. Für streng Emojis, Verwendung: if (Character.UnicodeBlock.of (char) == Character.UnicodeBlock.EMOTICONS) {// Emoji eingegeben} Benötigt API> = 19 –