TextView属性之圆角And渐变背景

这篇博客主要讲解如何为TextView添加边框并实现渐变背景,通过设置自定义的Drawable背景,不仅可以创建带边框的TextView,还能赋予其渐变色彩。内容适用于TextView的子类如EditText和Button。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

默认情况下,TextView\是不带边框的,如果要为TextView添加边框,我们就可以考虑为TextView设置一个背景Drawable,当然,该Drawable只是一个边框,这样就实现了带边框的TextView.由于可以为TextView设置背景Drawable对象,因此可以在定义Drawable时不仅指定边框,还可以指定渐变背景,这样既可以为TextView指定渐变背景和边框.

下面界面布局文件定义两个TextView:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!--通过background设置背景-->

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="带边框的文本"
        android:textSize="24pt"
        android:background="@drawable/bg_border"
        />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="圆角边框,渐变背景的文本"
        android:textSize="24pt"
        android:background="@drawable/bg_border2"
        />
</LinearLayout>
在上面的布局中,两个TextView指定了background,都是由XML文件定义的,将文件放在drawable文件内,该文件可当成Drawable使用,代码如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">

    <!--设置背景色为透明色-->
    <solid android:color="#0000"/>
    <!--设置红色边框-->
    <stroke android:width="4px" android:color="#f00"/>

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <!--指定圆角矩形的4个圆角的半径-->
    <corners android:topLeftRadius="20px"
        android:topRightRadius="5px"
        android:bottomRightRadius="20px"
        android:bottomLeftRadius="5px"/>
    <!--指定边框线条的宽度和颜色-->
    <stroke android:width="4px" android:color="#f0f"/>
    <!--指定使用渐变背景色,使用sweep类型的渐变
         颜色从红色->绿色->蓝色-->
    <gradient android:startColor="#f00"
        android:centerColor="#0f0"
        android:endColor="#00f"
        android:type="sweep"/>

</shape>
由此通过为TextView的android:background赋值,可为文本框增加大量自定义外观,这种控制方式相当灵活.

效果如图:


当然,这里介绍了TextView,但由于TextView是EditText和Button等类的父类,因此此处介绍的控制属性,对于他们同样适合.


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值