안드로이드 개발 팁 #26 - 레이아웃 XML 파일에 이모지 문자 넣는 방법steemCreated with Sketch.

어제 스팀 앱 개발기를 작성하면서 만나게 된 예상치 못한 고비가 있었습니다. 그것은 바로 레이아웃 XML 파일의 텍스트 뷰에 이모지를 텍스트로 넣는 것이었습니다. text 속성에 🔺를 바로 넣으면 될 줄 알았죠. 프리뷰에서는 아무 문제 없이 잘 보였으니까요. 그런데 말입니다... 실행 결과, 글자가 깨져서 나오는 것이 문제였습니다. 🔺를 text 속성에 바로 넣으면 안 되는 것입니다. 그러면 어떻게 해야 하는 것일까요?


해결 방법

이모지 🔺를 직접 넣는 대신, 유니코드 \uD83D\uDD3A를 대신 넣는 것으로 이 문제는 해결 되었습니다. 예를 들면요. TextView 뷰에 이 이모지만 text 속성 값으로 설정해 보겠습니다.

android:text="🔺"

위와 같이 text를 설정하면, 실행 화면에서 글자가 깨집니다. 그 대신 아래와 같이 이 속성을 설정해야 이모지가 정상적으로 보입니다.

android:text="\uD83D\uDD3A"

문제 - 그렇다면 다른 이모지는?

사용할 수 있는 이모지는 여러 가지가 있습니다. 이들의 유니코드는 어디서 찾을 수 있을까요?


이모지와 유니코드 찾기

아래 웹페이지에서 이모지 조회하고 유니코드를 찾을 수 있습니다.

https://charbase.com/block/miscellaneous-symbols-and-pictographs

image.png

위 페이지에서 원하는 이모지를 찾으시구요. 좌측의 인덱스 번호(예: U+1F53A)를 클릭하세요. 그러면 아래 스크린샷과 같이 이모지 관련 정보를 볼 수 있구요. 유니코드 또한 있습니다. Java Escape 값을 복사하여 레이아웃 XML의 TextView 뷰에 적용하면 됩니다. 유니코드에서 "\u"를 제외하고 알파벳 대소문자는 상관없습니다.

image.png


지난 안드로이드 개발 팁

Sort:  
 2 years ago 

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

Upvoted! Thank you for supporting witness @jswit.

Coin Marketplace

STEEM 0.15
TRX 0.15
JST 0.029
BTC 56269.96
ETH 2364.95
USDT 1.00
SBD 2.26