【Android 开发学习进程0.17Android资源文件selectortextview显示两种不同字体】金鞍玉勒寻芳客,未信我庐别有春。这篇文章主要讲述Android 开发学习进程0.17Android资源文件selectortextview显示两种不同字体相关的知识,希望能为你提供帮助。
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个字符开始,最后的参数为应用范围之间的交叉,或理解为范围末端是否会被包括。
推荐阅读
- 0042. Trapping Rain Water (H)
- Problem E: 编写函数(Swap (I) (Append Code))
- 修改App.config的键和值
- AndroidGetAPKInfo --- 检查包名(packageName)版本(versionNameversionCode)应用签名(Signature)等信息
- 安卓SharedPreferences
- 20200628-关于Android
- vue : 无法加载文件 C:UsersxxxAppDataRoamingpmvue.ps1,因为在此系统上禁止运行脚本
- uni-app 缓存无法读取问题
- from absl import app, flags, logging