안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
<string name="name">
홍길동, 이미자, 최양낙
</string>
위처럼 텍스트를
<string name="name">
홍길동, <font color="red">이미자</font>, 최양낙
</string>
이렇게 html 테그를 넣어서도 가능한가요?
이전에 책에서 봤던걸로 기억나는데, 안되네요......
좋은하루 되시구요, 답변 부탁 드리겠습니다.
감사합니다.
2012.04.20 11:39:09
네. HTML tag 넣으면 됩니다.
그런데 xml 에 <, > 요런건 못넣으니까 <, > 등으로 바꾸셔야 합니다.
코드상에서는 String s = "<font >oo</font>" 처럼 그냥 넣을 수 있습니다.
사용할때는 그냥 s 대신에 Html.fromHtml(s) 로 변환후 사용하면 됩니다.
2012.04.20 16:23:05
위에 분 방법도 있었군요..
저는 그런 생각은 하지 못하고,
!font-red 이런 특정 단어를 토큰으로 리소스에 삽입후에
리소스를 스트링으로 가져온후에
!font-red 를 <font color="red">로 변환하여서 사용하였습니다.
String str = getResources().getString(R.string.text); //리소스에서 가져오고
str = tokenToTag(str); //토큰 -> html태그 변환한 제가 만든 메서드
text.setText(Html.fromHtml(str)); //textview에 html형식으로 적용시키는부분
이런 형식으로



