본문 바로가기
Dev/Android

strings.xml 파일에서 text 색깔 변경하기

by healthyryu 2018. 5. 23.

안드로이드 텍스트 색깔 변경하기


하나의 TextView 에서 특정 글자의 색깔을 변경하기 위한 방법 중에서 string.xml 에서의 색깔 변경을 알려드립니다.


Activity 부분에서 Html.fromHtml() 을 이용해서 setText 처리를 합니다.

TextView.text = Html.fromHtml(getString(R.string.test), int)


그리고 strings.xml 파일에서 <![CDATA[]]> 처리를 해줍니다.

<string name="test"><![CDATA[<font color=#ff0000>Hello</font></string>


MainActivity.kt

val tv01 : TextView = findViewById(R.id.tv_01)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
tv01.text = Html.fromHtml(getString(R.string.tv01), Html.FROM_HTML_MODE_LEGACY)
} else {
tv01.text = Html.fromHtml(getString(R.string.tv01))
}


val tv02 : TextView = findViewById(R.id.tv_02)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
tv02.text = Html.fromHtml(getString(R.string.tv02), Html.FROM_HTML_MODE_LEGACY)
} else {
tv02.text = Html.fromHtml(getString(R.string.tv02))

}


strings.xml

<string name="tv01"><![CDATA[<font color=\'#ff0000\'>Hello</font>]]></string>
<string name="tv02"><![CDATA[<font color=\'#ff0000\'>Hello</font> test]]></string>


참고 : https://stackoverflow.com/a/31252426/3897810

반응형