TextView带你深入了解你可能不知道的用法

本文详细介绍了TextView的高级用法,包括添加图片、自动调整字体大小、阴影效果、链接处理、行数限制、文本显示策略等,帮助开发者充分利用TextView的各种功能提升UI设计体验。
摘要由CSDN通过智能技术生成

1.在textview的周围添加图片
android:drawableBottom:在text的下方输出一个drawable,可以是图片,样式,颜色等。其他举一反三
android:drawableLeft
android:drawableRight
android:drawableTop
android:drawableStart
android:drawableEnd
android:drawablePadding:设置text与drawable的间距,是与drawableLeft、 drawableRight、drawableTop、drawableBottom一起使用。

2.autoSizeMaxTextSize和autoSizeTextType
autoSizeMaxTextSize:最大字体大小
autoSizeTextType:textSize的大小会根据textView的宽高自动适配

  1. 在Android 8.0 (API level 26) 以上,才可以使用这个属性,不过通过拓展库可以最低支持到Android 4.0(API Level 14)及以上的系统(不过你的应用编译的targetSDKVersion必须在26及以上)。

  2. 在使用autoSizeTextType属性的时候宽高属性最好是固定的参数,或者设置maxHeight和maxWidth限制一下控件的宽高

  3. 如果只设置了autoSizeTextType属性的话,默认的textSize是12sp~112sp,粒度为1px

android:autoSizeMaxTextSize="???sp"
android:autoSizeTextType=“uniform”
如果想让TextView自动扩大尺寸以充分填满TextView,则将autoSizeTextType设置为"uniform"(autoSizeTextType只有"uniform"和"none"两种可取值),并且将最大允许尺寸(属性autoSizeMaxTextSize)设置为“你设置的值”sp
uniform:统一的水平和垂直文本大小缩放以适应容器。
none:没有自动调整大小(默认)
android:autoSizeMinTextSize="???sp"
android:autoSizeTextType=“uniform”
当文本很长,但又想自动缩小字体尺寸,以在TextView内单行全部显示时
总结: 让文本尽可能占满控件(文本太长时自动减小字体尺寸,而文本短时则自动增大字体尺寸)

autoSizeStepGranularity属性取值为字体尺寸,如"1sp"、"2sp"等,指定Android在搜索最佳字体尺寸时的迭代步长。

autotoSizePresetSizes则指定了所有尺寸的候选值,是数组类型,需要先在values/arrays.xml里定义一个数组,如下例:

<?xml version="1.0" encoding="utf-8"?> 12sp 16sp

然后autoSizePresetSizes属性引用这个数组:

<TextView

android:autoSizePresetSizes="@array/sizes" />

autotoSizePresetSizes的优先级高于autoSizeStepGranularity(即同时设置了autotoSizePresetSizes和autoSizeStepGranularity,则autoSizeStepGranularity的值将被忽略)。

4.shadowDX、shadowDy、shadowRadius
TextView的XML属性中关于阴影的几条属性

shadowDX、shadowDy、shadowRadius,分别是阴影的横、纵坐标偏移,以及阴影的半径,这个自己用一下就理解了。

5.android:autoLink
控制是否自动找到 url 和电子邮件地址等链接并将其转换为可点击的链接。默认值为"none",禁用此功能。

必须是以下常量值中的一个或多个(以"|"分隔)。

Constant Value Description

all f 匹配所有模式(相当于 web|email|phone|map)。

email 2 匹配电子邮件地址。

map 8 匹配地图地址。弃用

none 0 不匹配任何模式(默认)。

phone 4 匹配电话号码。

w

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橘子先生z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值