所有单个视图都是直接或者间接继承于View的,所以View有的属性,它们都有:
1:TextView,继承于View,在View的基础上加了文本,所以也多了一些对于文本的属性
android:text="Hello World!" 文本的内容
android:textAlignment="center" 文本的位置,这是在中心,也可在左(start)或右(end)等
android:textColor="@color/colorAccent" 文本的颜色
android:textScaleX="1" 文本横向拉伸的倍数,也可竖向拉伸,则是textScaleY
android:textSize="40sp" 文本文字的大小
android:shadowColor="@color/colorAccent" 文本投影的颜色
android:shadowRadius="20f" 文本投影半径的大小
android:shadowDx="20f" 文本在x轴上投影的大小
android:shadowDy="20f" 文本在y轴上投影的大小
android:textStyle="bold" 文本的样式,bold表示加粗文本
android:drawableLeft="@drawable/circle_selected" 在文本的左边添加图片,也可在上,下,右
以上是常用的属性
TextView也可直接通过ID值获取,其属性也可直接通过.text...获取,以赋值
也可以通过set....对其赋值:
注意:通过TextView.text获取的文本是CharSequence类型,不是string类型,需要将其转换
2:ImageView属性:在View的基础上加了image的属性
android:src="@drawable/banner" 添加图片上去
android:scaleType="center" 图片在imageView控件中的拉伸方式
拉伸方式:
1:
fit:按比例缩放,当宽度或者高度达到控件边缘时,停止缩放
fitstart:如果没有填满控件,则显示在初始位子
fitend:与fitstart相反
fitcenter:显示在中心
fitxy: 自由缩放,直到宽高都填满,可能会失真
center:等比例缩放
centerInside:等比例缩放直到整个图片显示在控件中
centerCrop:等比例缩放,直到填满整个控件
卷连门的应用(clip),图片从左缓慢向右打开,或从中间向两边打开等
1:先创建一个drawreserce文件,并将其改为clip类型
<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android="http://schemas.android.com/apk/res/android"
android:clipOrientation="horizontal" 是横着展开还是竖着展开,这表示横着展开
android:drawable="@drawable/banner" 将哪张图片添加上去
android:gravity="start"> 是从哪开始展开,从开始位置(表该控件坐标的开始位置),结束位置,还是从中间
</clip>
2:将该文件添加到imageView上
android:src="@drawable/clip"
3:利用定时器启动
clipDrawable的展开是通过它的level属性,其范围是0到10000,一点点的展开
//定时器的应用
val timer = Timer()
//获取添加到图片上的clipDrawable
val clipDrawable = imageView.drawable as ClipDrawable
timer.schedule(object : TimerTask() {
//第一个参数是任务,我们要做的事情
override fun run() {
clipDrawable.level += 200
if (clipDrawable.level > 10000){
//停止定时器
timer.cancel()
}
}
}, 0,//延迟的时间,
100 //间隔的时间,注意这里的时间是以毫秒为单位的
)