android textview动态修改指定文字颜色

动态修改指定文字颜色
String text = "获得银宝箱!";  
 SpannableStringBuilder style=new SpannableStringBuilder(text);     
  style.setSpan(new BackgroundColorSpan(Color.RED),2,5,Spannable.SPAN_EXCLUSIVE_INCLUSIVE);     //设置指定位置textview的背景颜色  
  style.setSpan(new ForegroundColorSpan(Color.RED),0,2,Spannable.SPAN_EXCLUSIVE_INCLUSIVE);     //设置指定位置文字的颜色  
  textView.setText(style);   
动态修改指定文字颜色 并添加下划线
 SpannableString clickString = new SpannableString(exChangeValue);//exChangeValue TextViwe的内容
                clickString.setSpan(new ClickableSpan() {
                    @Override
                    public void onClick(View widget) {
                        Intent intent = new Intent(ExchangeActivity.this, WebActivity.class);
                        intent.putExtra(WebActivity.WEB_URL_PARA, flow.getAgreement().getUrl());
                        startActivity(intent);
                    }

                    @Override
                    public void updateDrawState(TextPaint ds) {
                        super.updateDrawState(ds);
                        ds.setColor(Color.parseColor("#FF7012"));//设置颜色
                    }
                }, i, i1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);//i变色的开始位置 i1变色的结束位置
                tv_exchange_rule_value.append(clickString);
                tv_exchange_rule_value.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容