UISwich控件的相关属性

本文详细介绍了Swift中UISwitch控件的基本属性设置,包括大小、背景颜色、开关颜色等,并演示了如何通过ValueChanged事件监听开关状态变化。

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

- (void)viewDidLoad {
02.//实例化一个开关控件
03.UISwitch *swi1=[[UISwitch alloc]init];
04.//设置位置和大小,发现大小无效。即开关控件大小不受影响,还是那么
05.swi1.frame=CGRectMake(3010030080);
06.//设置背景,发现上面设置的框的大小确实无效,因为背景只有控件那么大,并不是设置的那么大,而且控件是圆角
07.swi1.backgroundColor=[UIColor redColor];
08.//设置ON一边的背景颜色,默认是绿色
09.swi1.onTintColor=[UIColor yellowColor];
10.//设置OFF一边的背景颜色,默认是灰色,发现OFF背景颜色其实也是控件”边框“颜色
11.swi1.tintColor=[UIColor purpleColor];
12.//设置滑块颜色
13.swi1.thumbTintColor=[UIColor greenColor];
14.swi1.onImage=[UIImage imageNamed:@"1.png"];//无效
15.swi1.offImage=[UIImage imageNamed:@"logo.png"];//无效
16.//设置成开启病设置动画形式出现,当然也可以直接用[swi1 setOn:YES];
17.[swi1 setOn:YES animated:YES];
18.//开关控件默认是关闭的,setOn可以默认成打开,所以其实它在显示的时候有一个打开的动作,但这个动作不发送消息,即捕捉不到
19.//如我们做个试验,弄个针对“值变动”所引发的操作,即值发生变动,开启输出“On”,关闭输出“Off”
20.//发现第一次并没有输出On,我们自己手动从关闭到开启时会有On和Off
21.//所以这个setOn虽然是一个开启动作,但我们可以认为它相当于是内置了,我们看不到这个动作,所以捕捉不到
22.//但这里我们练习了获取值变动病利用isOn来做相应的操作
23.[swi1 addTarget:self action:@selector(getValue1:) forControlEvents:UIControlEventValueChanged];
24. 
25.//isOn是一个getter方法,所以不能够赋值,即不能用swi.isOn=YES,只能取得当前结果,一般用于判断是否是开启状态
26.if (swi1.isOn) {
27.NSLog(@"It is On");
28.}
29. 
30.[self.view addSubview:swi1];
31.[super viewDidLoad];
32.// Do any additional setup after loading the view, typically from a nib.
33.}
34. 
35.-(void)getValue1:(id)sender{
36.UISwitch *swi2=(UISwitch *)sender;
37.if (swi2.isOn) {
38.NSLog(@"On");
39.}else{
40.NSLog(@"Off");
41.}
42.}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值