Android UI中TextView的使用方法
一、TextView不同區(qū)域設(shè)置顏色,大小、點擊事件
String msg = getResources().getString(R.string.school_roll_auth); SpannableStringBuilder style = new SpannableStringBuilder(msg); // 設(shè)置字體顏色 style.setSpan( new ForegroundColorSpan(getResources().getColor( R.color.tv_color_99)), 0, msg.length() - 5, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); style.setSpan( new ForegroundColorSpan(getResources().getColor( R.color.text_blue)), msg.length() - 5, msg.length(), Spannable.SPAN_EXCLUSIVE_INCLUSIVE); // 設(shè)置字體背景色 style.setSpan( new BackgroundColorSpan(getResources().getColor( R.color.bg_common)), msg.length() - 5, msg.length(), Spannable.SPAN_EXCLUSIVE_INCLUSIVE); // 設(shè)置可點擊部分 style.setSpan(new ClickableSpan() { @Override public void onClick(View widget) { //do Click .... } @Override public void updateDrawState(TextPaint ds) { super.updateDrawState(ds); ds.setUnderlineText(false); ds.clearShadowLayer(); } }, msg.length() - 5, msg.length(), Spannable.SPAN_EXCLUSIVE_INCLUSIVE); tv_school_roll_msg.setText(style); // 此方法在需要響應(yīng)用戶事件時使用,如點擊一個電話號碼就跳轉(zhuǎn)到撥號頁面。如果不執(zhí)行這個方法是不會響應(yīng)事件的,即便文本看著已經(jīng)是下劃線藍(lán)色字了。 tv_school_roll_msg.setMovementMethod(LinkMovementMethod.getInstance());