Android:selector使用

本文由小小白分享,介绍如何在Android中使用Selector创建组件背景变化,并提供了一个简洁的点击事件实现方法,避免了传统OnClickListener的繁琐步骤。详细步骤包括在drawable资源文件中创建Selector,以及在前端和Java代码中调用。

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

Hello everyone!我是小小白,今天又来和大家分享干货了!先上效果图:

在这里插入图片描述

内容如下:selector 另外赠送一个简单的点击事件!(啊哈哈,看一送一,划算!)
仔细看按钮2 你能发现它不是正方形。哎!废话,这就是今天的成品!我们一起冷静分析一下,需要我们干什么!

我们只需要自己写个样式就可以了。

首先,在左侧找到drawable文件,右击 ->new -> Drawable resource file. 然后填写文件名,点击OK即可!

在这里插入图片描述

在这里插入图片描述

文件创建成功后,你看到的会是这个样子的:selector一般用来控制组件背景!
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed = "true">             <!--当控件被点击时-->
        <shape>
            <solid android:color="#FF0000"/>          <!--全部填充背景色:红色-->
            <corners android:radius="5dp"/><          !--圆角外边框-->
        </shape>
    </item>
    <item android:state_pressed="false">          <!--当控件没有被点中时-->
        <shape>
            <solid android:color="#FF9900"/>          <!--背景全部填充:橘色-->
            <corners android:radius="5dp"/>
        </shape>
    </item>

</selector>
然后,在你的前端加上如下这句话,of course but4的位置放你刚创建的文件的名字!
android:background="@drawable/but4"
好了,来看看今天的非卖品!一个超级简单的点击事件!大家可以先想想平时是怎么创建点击事件的!是不是:现在.java 文件中得到某控件id,然后id.setOnClickListener(new View,OnClickListener){}。。。。。。。。
我们只需要简单几步搞定一切。看在.java文件中写一个方法,例如:
public void showToast(View v){
        Toast.makeText(this,"我被点击了",Toast.LENGTH_SHORT).show();
    }
手动创建一个方法,极其容易忘记(View v)这个是万万不可少的!
然后,我么直接在前端里调用这个方法就行,Look:
<Button
        android:id="@+id/btn_4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:layout_below="@id/btn_3"
        android:text="按钮4"
        android:textSize="20sp"
        android:textColor="#FFFFFF"
        android:background="@drawable/but4"
        android:onClick="showToast"    <!--在这我是重点哦!快看我!-->
        />
大功告成,撒花!拜拜喽!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一只小白小小白小白鼠

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

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

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

打赏作者

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

抵扣说明:

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

余额充值