web-dev-qa-db-ja.com

テキストビューでユニコードで絵文字を設定する方法は?

こんにちは、私は次のことをしたいです:

??? unicode = U+1F60A
String emoji = getEmojiByUnicode(unicode)
String text = "So happy "
textview.setText(text + emoji);

私のテキストビューでこれを取得するには:

とても幸せ ????

getEmojiByUnicode(unicode)を実装するにはどうすればよいですか?

unicode変数はどの型である必要がありますか? (String、char、int?)

Drawableを使用したくないことに注意してください!

75

ソリューションを見つけました:

私のユニコードでは、「U +」を「0x」に置き換えました

例:「U + 1F60A」を「0x1F60A」に置き換える

このようにして、私は「int」のような

int unicode = 0x1F60A;

で使用できます

public String getEmojiByUnicode(int unicode){
    return new String(Character.toChars(unicode));
}

だからTextviewは表示されますか???? Drawableなし

http://apps.timwhitlock.info/emoji/tables/unicode で試してください

155

次のような10進コードを使用して、文字列リソースで絵文字を直接使用できます。

😊

例えば:

<string name="emoji">I am happy &#128522;</>
21
P1xelfehler

注:Kotlinの場合

fun getEmoji(unicode: Int): String {
    return String(Character.toChars(unicode))
}
1
Bipin Bharti