android自定义Button样式(清晰简单)

本文介绍了一种自定义Android Button样式的实现方法,包括创建XML样式文件、定义不同状态下的样式及应用到Button组件上的步骤。

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

最近在学习一下简单的控件,如Button,TextView等...但系统提供的样式大多都满足不了,所以我们需要自己来自定义样式来满足自己的需求。

下面跟大家分享一下最近学到的一种自定义方式,以下用Button按钮来做例子:

步骤1:

在res/drawable文件夹下创建文件xml文件,

步骤2:

在步骤1中创建的文件中写入自定义样式的代码:

代码:

文件名:my_style.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="false"><span style="white-space:pre">	</span>//设置当状态为未点击时的样式
        <shape> <span style="white-space:pre">				</span>//在shaoe内编写自定义的样式
            <solid android:color="#0F0"/>       //填充的颜色
            <corners android:radius="20dp"></corners><span style="white-space:pre">	</span>//边角弧度
            <stroke android:color="#FFF" android:width="10dp"/>  //边框设置 color:边框颜色 , width:边框厚度
        </shape>
    </item>
    <item android:state_pressed="true">         //同理,该处是设置点击状态时的样式
        <shape>
            <solid android:color="#ABCABA"/>
            <corners android:radius="250dp"></corners>
            <stroke android:color="#000" android:width="10dp"/>
        </shape>
    </item>

</selector>

步骤3:

在需要该样式的Button中设置背景为my_style.xml

android:background="@drawable/my_style"
这就搞定啦!附上效果图:

点击前:


点击后:


最后补充点知识:

<Item android:state_pressed = "?">这是是否点击的状态

还有其他的状态可以判断出了,如:

state_foucsed 是否获得焦点(注意控件中要设置属性,android:focusable = "true" // 可获得焦点)

state_selected 是否选中。

那其他的控件也可根据状态的不同来设置不同的样式了。

---努力学习,天天向上---

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值