学会了textview的基本用法,我最近有看到了一个好玩的:跑马灯实现文字滚动,作为一个基本的组件,它的作用当然巨大,所以我们有必要提高一下对textview的认知,于是我今天就利用课余时间做了一个跑马灯字体,还算看得下去:
textview的高级运用:跑马字
首先,我新建一个activity,放上我们的基本组建:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv_Title"
android:textSize="50sp"
android:text="别在该奋斗的年纪选择安逸"
android:singleLine="true"
android:ellipsize="marquee"
android:scrollHorizontally="true"
android:marqueeRepeatLimit="marquee_forever"
android:focusable="true"
android:focusableInTouchMode="true"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
我用的约束布局,设置的宽高是包裹格式,与父容器左右上对齐,由于还有其他组件就先放最上面;
实现跑马灯主要依靠六个属性:
1、android:singleLine="true"设置文本单行显示
2、android:ellipsize="marquee"设置为滚动模式
3、android:scrollHorizontally="true"设置水平方向滚动
4、android:marqueeRepeatLimit="marquee_forever"滚动次数为无限
5、android:focusable="true"捕获焦点
6、android:focusableInTouchMode="true"触摸焦点捕获
然后运行,就会有跑马灯效果了。
然后觉得不错,又建了一个textview ,加了一个属性:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="百度一下,你就知道:https://www.baidu.com"
android:id="@+id/tv_baidu"
android:textSize="30sp"
android:autoLink="web"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_Title"/>
android:autoLink="web";然后就发现我可以访问百度了。
虽然功能强大,但是无法满足我视觉上的需求,所以我就在后面来了一个textview:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv_baiduLink"
android:textSize="30sp"
android:drawableBottom="@drawable/logo"
android:autoLink="web"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_baidu"/>
这一次将小米的logo加了上去,终于是好看了一些,主要是用到了:
android:drawableBottom="@drawable/logo"
设置好了logo,我又有问题了,如果我在添加一个圆角怎么样,就像前端的radius那样多好:
于是我在drawable中创建了一个myclass:
于是实现了将方角改为圆角的操作;
shape用来设置形状,主要自子标签如图:
<corners>:用来设置填充颜色
<size>:用来设置形状大小
<stroke>:用来设置边框
然后只需要在标签下的背景设置为myclass就可以了
是不是很简单?
关注我,更多分享,公众号:代码栈