android高仿ios开关-CheckBox-Button

本文提供了一个高度模仿iOS风格的开关控件实现方案。该控件基于CheckBox进行扩展,支持自定义大小(长度和宽度需保持比例一致),并具备拖动功能。此外,文章还展示了如何设置监听器以响应开关状态的变化。

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

本文摘抄自: 链   接

感觉原文有些东西,介绍的不详细,所以自己整理了下。

(因为有些博主写自定义控件,讲了很多思路后,最后给出的东西,结果连控件的长和宽都不能设置)

高仿ios开关的例子源码。

功能:

1、可以设置button的大小(缺点:只能长宽保持同比例,设置button的长和宽,)

2、可以实现拖动功能(ps:有些人写的不可以的,我这里先说明出来,懒得大家浪费时间)

2、因为此自定义控件是extendeds ChexBox写的,所有相关方法都有。比如:(有些只是继承View写的,只有点击事件,也不是不可以,只是比较麻烦而已)


switch2.setEnabled(false);//设置不可点击
//设置监听
switch1.setOnCheckedChangeListener(new OnCheckedChangeListener() {
<span style="white-space:pre">	</span>@Override
<span style="white-space:pre">	</span>public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
<span style="white-space:pre">		</span>if (isChecked) {
<span style="white-space:pre">			</span>Toast.makeText(TestActivity.this, "开启", Toast.LENGTH_SHORT).show();
<span style="white-space:pre">		</span>} else {
<span style="white-space:pre">			</span>Toast.makeText(TestActivity.this, "关闭", Toast.LENGTH_SHORT).show();
<span style="white-space:pre">		</span>}
<span style="white-space:pre">	</span>}
});

演示gif:



大概就这样,如果是想用CheckBox控件,我觉得这个还挺简单方便的。

源码下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值