Dev/Android
[Android] TextView draw Underline - 텍스트 밑줄 긋는 3가지 방법
healthyryu
2019. 1. 10. 10:39
TextView 에서 밑줄(Underline) 긋는 방법 3가지!!!!
TextView 에서 밑줄을 긋기 위해서 검색을해서 (제가)알아낸 3가지 방법입니다.
1. strings.xml 에서 간단하게 HTML Tag 이용하는 방법
Java
// strings.xml 작성
<string name="리소스"><u>I can't find pairing button</u></string>
// Activity 에서 작성
TextView.setText(Html.fromHtml(getResources.getString(R.string.리소스)));
Kotlin
TextView.text = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
Html.fromHtml(resources.getString(R.string.리소스), Html.FROM_HTML_MODE_LEGACY)
} else {
Html.fromHtml(resources.getString(R.string.리소트),)
}
2. Activity 에서 setPaintFlags() 함수로 밑줄 긋는 방법.
Java
TextView.setPaintFlags(TextView.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
Kotlin
textView.paintFlags = Paint.UNDERLINE_TEXT_FLAG
3. Activity 에서 SpannableString 클래스를 사용해서 밑줄 추가하는 방법
Java
SpannableString content = new SpannableString(TextView.getText().toString());
// 저는이미 TextView 에 String 을 넣었기 때문에 위와 같이 TextView.getText().toString() 했음
content.setSpan(new UnderlineSpan(), 0, content.length(),0);
TextView.setText(content);
Kotlin
val content = SpannableString(tvEditTime.text.toString())
content.setSpan(UnderlineSpan(), 0, content.length, 0)
tvEditTime.text = content반응형