2017-07-21 2 views
0

Je voudrais trouver combien d'emojis l'utilisateur a entré dans un EditText. Si l'utilisateur n'entre qu'emojis et utilise 3 ou moins, je veux être capable d'afficher cette chaîne dans l'application avec une police plus grande.Get Emoji Count In String

À l'heure actuelle, je suis tombé sur ce post qui aide à détecter si des emojis sont présents dans la chaîne, mais je n'ai pas été capable de comprendre comment compter le nombre d'emojis.

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

Est-ce que quelqu'un sait comment je peux obtenir le nombre emoji d'une chaîne?

Répondre

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

Va-t-il compter d'autres caractères Unicode bizarres comme emoji? – johnchen902

+0

Oui. strictement emoji, utilisez: si (Character.UnicodeBlock.of (char) == Character.UnicodeBlock.EMOTICONS) {// emoji entrées } API requis> = 19 –