에이치의 모바일 앱 개발
TextView> UI Postion Setting version 1.0.1 본문
기본적으로 TextView 크기는 디바이스 설정 폰트에 따라 변경 되는것이 좋으므로 SP 지정 형식을 따르는 것이 좋다.
1/3) TextView 에 입력될 String Value 색, 글꼴, 크기 변경
SpannableStringBuilder spanString= new SpannableStringBuilder("가나다라");
//글자색 변경
spanString.setSpan(new ForegroundColorSpan(Color.parseColor("#666666")), 0, spanString.toString().length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//글자크기변경
spanString.setSpan(new AbsoluteSizeSpan(30), 0, spanString.toString().length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
※ 3/4 크기 할당
//Typeface
spanString.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0, spanString.toString().length(),Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
.Typeface.BOLD_ITALIC, .Typeface.ITALIC
return new SpannableStringBuilder(spanString);
//첫글자 대문자
StringBuilder sb = new StringBuilder("가나다");
sb.setCharAt(0, Character.toUpperCase(sb.charAt(0)));
2/3) TextView 자바소스코드에서 속성 설정
DisplayMetrics metrics;
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int displayWidth = metrics.widthPixels;
int displayHeight = metrics.heightPixels;
textview.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);
textview.setSingleLine(true);
textview.setEllipsize(TextUtils.TruncateAt.END);
textview.setTextColor(Color.parseColor("#333333"));
textview.setTextColor(Color.rgb(148, 83, 61));
textview.setTextColor(0xFF3366CC);
textview.setTypeface(null, Typeface.BOLD);
+ 텍스트 흘러가게 할시 setEllipsize 변경 + 자바소스에 textview.setSelected(true); 추가
Html 클래스를 이용하여 HTML 태크로 아래 와 같이 설정할수 있다.
위 코드는 내부적으로 파싱되어 SpannableStringBuilder 클래스로 재처리 된다고 한다.
따라서 가능하면 SpannableStringBuilder 로 처리하면 HTML 파싱시간을 단축할수 있다고 한다 물론 그 파싱시간은 현재 단말기들의 사양이 높아 짐에 따라 크게 신경쓰지 않아도 될만한 속도 차이이고 로직 처리에 따라 위 Html 클래스를 사용할때 코드를 줄일수 있다면 Html 코드를 사용해도 무방하다고 한다.
//URL Link
++ text size get
txt_busRegion.measure(0, 0);
int textWidth= 1080- 218- txt_busRegion.getMeasuredWidth();
txt_busNum.setMaxWidth(displayWidth * textWidth / 1080);
'Android > Android 개발 소스' 카테고리의 다른 글
ListView Hegiht Setting version 1.0.1 (0) | 2017.12.23 |
---|---|
keypad setting version 1.0.1 (0) | 2017.12.23 |
내 위치 정보 가져오기<확장> (0) | 2017.12.23 |
내 위치 정보 가져오기<기본> (0) | 2017.12.23 |
연결된 와이파이 정보 가져오기 (0) | 2017.12.22 |