Android 使用TextView的一些技巧

这是我第一次写技术相关的文章,写的不好或者不对的地方,还请各位见谅!

TextViewAndroid中最基本的一个组件了,主要是为了显示文本内容的,但是在显示文本的过程中,产品总是会提出一些稀奇古怪的效果,

what?这不是没事找事嘛,显示一个文本而已 还要搞得这么复杂 丫丫个呸! 算了 废话不多说,直接敲代码了

ps:一些基本的属性这里就不介绍了  直接介绍一些不常用的了 见谅 见谅!


1.TextView设置行间距、行高,以及字间距

android:lineSpacingExtra="8dp"  这个表示行间距的值  单位通常为dp,值可以为负数,小数和0。如果值为正数表示增加行间距;如果值为负数表示减少行间距;如果值为0,则没有变化

②android:lineSpacingMultiplier="2" 设置行间距的倍数  没有单位,值可以为任意浮点数。如果值大于1.0表示增加行间距,如果值小于1.0表示减少行间距。

java代码:setLineSpacing (float add, float mult)

第一个参数:要增加的间距数值,对应android:lineSpacingExtra

第二个参数:要增加的间距倍数,对应android:lineSpacingMultiplier

③android:textScaleX="2"  TextView 并没有自带改变字间距  它是控制字体水平方向的缩放,即水平方向放大。并不是咱们所需要的字间距的放大  效果:textview 水平方向放大效果 

2.TextView单行,多行显示

android:singleLine="true" 单行显示   

android:lines="2" 不管多大都显示两行  会有2行的高度  -----> setLines(int lines)

android:maxLines="2"  超过两行只显示两行 只会有内容多少的高度  最多2行的高度  -----> setMaxLines(int maxlines)

android:minLines="2" 用于设置TextView最小高度为指定行高度  -----> setMinLines(int minlines)

android:ellipsize="end"  配合以上属性使用显示 ...

android:maxEms="10"  这个表示单行最多显示10个字符的宽度,超过的换行显示

android:maxLength="10",这个表示当前控件最多有10个字符,超过部分直接截取掉。注意,单个字母和单个中文都表示一个字符

3.TextView 显示下划线 斜体等效果

android:textStyle="bold"  粗体文本

android:textStyle="italic"  斜体文本

android:textStyle="italic|bold"  斜体+粗体

java代码:

txt1.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);  添加删除线,xml 未提供

txt2.getPaint().setFlags(Paint.FAKE_BOLD_TEXT_FLAG);    设置加粗

txt3.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);  添加下划线

txt4.setFlags(Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG);  设置中划线并加清晰

txt5.setText(Html.fromHtml(content));  加载html代码

txt5.setText(String.valueOf(Html.fromHtml("¥")));  显示人名币符号¥  用户输入打出的人名币符号  由于机型差异 不同机型显示不一样

4.TextView 链接相关

android:autoLink="web" 表示自动识别文本中的链接。其属性值有 请点击  ---> setAutoLinkMask(int mask)

android:textColorLink  文本含有链接文字的颜色  -----> setLinkTextColor(int color)

android:linksClickable  链接是否可点击/点击是否执行对应动作 ----->setLinksClickable(boolean whether)


好了 暂时更新到这里  后续有新的技巧会继续添加更新中  谢谢阅读!

你可能感兴趣的:(Android 使用TextView的一些技巧)