프로그램을 만들다보면 '안녕하세요. 반갑습니다.' 왼쪽과 같이 부분적으로 색상을 변경해야 되는 경우가 발생할 수 있습니다. 또는 부분적으로만 Bold처리 등을 할 수도 있습니다. 이러한 경우 아래와 같은 코드를 사용할 수 있습니다.
final SpannableStringBuilder sp = new SpannableStringBuilder("안녕하세요.");
sp.setSpan(new ForegroundColorSpan(Color.RED), 1, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.append(sp);
sp.setSpan(new ForegroundColorSpan(Color.RED), 1, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.append(sp);
안드로이드펍에 어떤 글에서는 String에 Html태그가 적용이 된다고 되어 있는데, <b><u>와 같은 태그만 적용이 되었고 색상에 대해서는 잘 안되었습니다. (가능한 방법은 [이쪽] 자료를 참고해 보시길 바랍니다). 그래서 검색해서 이 방법을 찾아서 사용하였습니다.
위 코드를 분석하면 "안녕하세요." 라는 텍스트의 1~3위치에 있는 텍스트를 RED 색상으로 변경해서 textView에 넣는 코드입니다. 여러 가지로 색상을 바꿔야하면sp를 Clear한 다음에 append로 텍스트를 넣어서 재활용 할 수 있습니다.
- 참고 자료
http://developer.android.com/reference ··· der.html
http://anddev.tistory.com/49
http://www.mailinglistarchive.com/andr ··· 030.html
http://www.androidpub.com/android_dev_info/51697
출처 : http://www.dingpong.net/tt/215
'자료' 카테고리의 다른 글
APNS 발송 테스트 소스 (0) | 2012.02.02 |
---|---|
안드로이드 설치 ... JAVA SDK 설치 부터 AVD 설치까지 (1) | 2011.10.04 |
[Android] Activity 생성시에 사용되는 Intent Flag 정리 (0) | 2011.07.14 |
URL주소의 이미지를 Bitmap으로 (1) | 2011.07.13 |
assets 파일을 특정 폴더에 복사하기 (0) | 2011.06.24 |