Android 开发学习进程0.17 Android资源文件selector textview显示两种不一样字体

selector 是安卓资源文件的一种,它可使按钮等实现不一样状态下的不一样UI,不用在代码中实现,而使用方式有两种,一种在color文件下 建立.xml可使按钮等字体在不一样状态下的变化,其二是在drawable中建立资源文件,能够设置背景等,下面的<shape标签能够绘制不一样种图形,<gradient还能够实现渐变色的效果。

如何使一个textview显示两种不一样字体的布局

对于新手来讲可使用多个textview拼接的方法,但此方法繁琐,一个textview实现有两种方法,
一是经过Android支持的HTML来实现不一样字体颜色大小,但此方法不能够精确控制字体大小,如 tv1.setText(Html.fromHtml("<font color=\'#217aff\' ><big>abc</big></font><font color=\'#217aff\' ><small>def</small></font>"));
另一种方式为使用 SpannableString的方式,能够准确控制大小,同时能够把此类封装,便于使用。布局

SpannableString s1 = new SpannableString("asdf");
s1.setSpan(new AbsoluteSizeSpan(18, true), 0, s1.length()-2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s1.setSpan(new AbsoluteSizeSpan(10, true), s1.length()-2, s1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
 //或设置颜色 s2.setSpan(new ForegroundColorSpan(Color.parseColor("#656565")), 0, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv3.setTextColor(Color.parseColor("#217aff"));
tv3.setText(s1);

解释一下方法参数,设置字体时第一个参数为字号大小,第二个第三个是应用范围,从第0个字符开始,最后的参数为应用范围之间的交叉,或理解为范围末端是否会被包括。字体

相关文章
相关标签/搜索