Android之TextView设置String文本颜色
2017-09-05 16:34
423 查看
每一次我们在textview布局的时候,当遇到多个文字颜色的时候,会变得很麻烦,这时候是需要一个textview,设置一个textcolor 还是有其他更好的办法呢?下面我们来看看有几种能设置textview 颜色:
第一种: 我们可以在xml 文件中 在
进行设置颜色,也可以通过代码 把控件findviewByid 出来后,然后再settextcolor() 进去。
2.
自己认为这种是很暴力的方式
3。
这一种动态设置代码相当于取代了第一种动态设置string 颜色,当看见画横线就说明这个方法属于过时了,嘎嘎
4.tv.setTextColor(android.graphics.Color.RED) ;这一种是很老的一种,我见过老的程序员写过,调用系统自带的,局限性太大
5.tv.setTextColor(0xffff00ff); 我只能说这一种也很老,这就属于十进制了,原理不解析,请看书籍
第二种: 上面我们讲的第一大种类,说白其实就是单个textview 设置颜色的时候,但是当我们项目中,发现一行有多个文字颜色是不同的时候,这个时候怎么办,其实一个textview就搞定了,不需要自定义textview,除非你工作两年以上了,下main我们看如何实现
主要是通过htm这个东西,textview 能识别html 这个类。
这样就办了,一个textvew 就行了,但是这里就得需要settext(),还有很多人写的时候,发现出不来,那是因为这个坑是HTML.fronHtml(这个括号里面一定写所有的,如果其他的内容在括号外面就不显示了); 切记
第三种:
textView=(TextView)findViewById(R.id.text_show);
SpannableStringBuilder style = new SpannableStringBuilder("备注:签收人(张三)");
style.setSpan(new ForegroundColorSpan(Color.BLUE), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
style.setSpan(new ForegroundColorSpan(Color.RED), 7, 9, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(style);
是不是第三种感觉就比较高大上了,确实,第三种也是有点牛逼。推荐如果一行显示多个文字颜色的时候,建议用第二种和第三种,第三种更好!谢谢大家的观看
第一种: 我们可以在xml 文件中 在
android:textColor="@color/login_submit" /> 4000
进行设置颜色,也可以通过代码 把控件findviewByid 出来后,然后再settextcolor() 进去。
1
mBtnDownAndOpen.setTextColor(mContext.getResources().getColorStateList(R.color.networkdata_btn_open_txtcolor_selector));通过代码设置颜色,但是这种已经过时,还有两种通过代码设置。小编知道,
2.
title.setTextColor(Color.parseColor("#ff0000"));
自己认为这种是很暴力的方式
3。
title.setTextColor(ContextCompat.getColor(this,R.color.notice_color));
这一种动态设置代码相当于取代了第一种动态设置string 颜色,当看见画横线就说明这个方法属于过时了,嘎嘎
4.tv.setTextColor(android.graphics.Color.RED) ;这一种是很老的一种,我见过老的程序员写过,调用系统自带的,局限性太大
5.tv.setTextColor(0xffff00ff); 我只能说这一种也很老,这就属于十进制了,原理不解析,请看书籍
第二种: 上面我们讲的第一大种类,说白其实就是单个textview 设置颜色的时候,但是当我们项目中,发现一行有多个文字颜色是不同的时候,这个时候怎么办,其实一个textview就搞定了,不需要自定义textview,除非你工作两年以上了,下main我们看如何实现
主要是通过htm这个东西,textview 能识别html 这个类。
title.setText(Html.fromHtml("假如生命只有一次,"+"<font color='red'>我想要娶了你,</font>"+"<font color='black'>可不可以</font>",0));
这样就办了,一个textvew 就行了,但是这里就得需要settext(),还有很多人写的时候,发现出不来,那是因为这个坑是HTML.fronHtml(这个括号里面一定写所有的,如果其他的内容在括号外面就不显示了); 切记
第三种:
textView=(TextView)findViewById(R.id.text_show);
SpannableStringBuilder style = new SpannableStringBuilder("备注:签收人(张三)");
style.setSpan(new ForegroundColorSpan(Color.BLUE), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
style.setSpan(new ForegroundColorSpan(Color.RED), 7, 9, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(style);
是不是第三种感觉就比较高大上了,确实,第三种也是有点牛逼。推荐如果一行显示多个文字颜色的时候,建议用第二种和第三种,第三种更好!谢谢大家的观看
相关文章推荐
- Android之TextView设置String文本颜色
- android:TextView设置背景色和文本颜色
- Android利用SpannableStringBuilder设置TextView中部分文字的颜色...
- android:TextView中的文本链接之--设置超链接、颜色、字体等属性
- android:TextView中的文本链接之--设置超链接、颜色、字体等属性
- android:TextView中的文本链接之--设置超链接、颜色、字体等属性
- android之TextView部分本文变颜色,并设置文本监听器
- android textview改变部分文字的颜色和string.xml中文字的替换及部分内容设置颜色、字体、超链接、图片
- 一起学android之如何设置TextView中不同字段的字体颜色(22)
- android在代码中四种设置控件(以及TextView的文字颜色)背景颜色的方法
- android中用Spannable在TextView中设置超链接、颜色、字体
- android TextView设置删除线,超链接,颜色和字体等说介绍
- [Android教程]TextView使用SpannableString设置复合文本
- 富文本的使用之二 设置TextView不同字段的颜色和背景颜色
- android TextView部分字体颜色设置以及图文混排
- Android TextView中文字通过SpannableString来设置超链接、颜色、字体等属性
- android TextView的字体颜色设置的多种方法
- android--设置TextView部分文字的颜色和背景(高亮显示)
- Android textview设置不同的颜色和大小
- android中用Spannable在TextView中设置超链接、颜色、字体