本文共 1686 字,大约阅读时间需要 5 分钟。
1,打开Xcode,创建名为UISwitch的工程
如何创建工程:2,在ViewController.m的viewDidLoad方法中添加如下代码:
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UISwitch * swi = [[UISwitch alloc]initWithFrame:CGRectMake(100, 100, 100, 40)]; // 设置控件开启状态填充色 swi.onTintColor = [UIColor greenColor]; // 设置控件关闭状态填充色 swi.tintColor = [UIColor redColor]; // 设置控件开关按钮颜色 swi.thumbTintColor = [UIColor orangeColor]; [self.view addSubview:swi];}
3,运行代码:
关闭状态: 开启状态:UISwitch继承于UIControl,继承于UIControl的类都可以通过addTarget方法添加触发事件
为UISwitch添加以下代码:
// 当控件值变化时触发changeColor方法[swi addTarget:self action:@selector(changeColor:) forControlEvents:UIControlEventValueChanged];
添加changeColor方法:
-(void)changeColor:(UISwitch *)swi{ if(swi.isOn){ self.view.backgroundColor = [UIColor redColor]; }else{ self.view.backgroundColor = [UIColor blueColor]; }}
运行代码:
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UISwitch * swi = [[UISwitch alloc]initWithFrame:CGRectMake(100, 100, 100, 40)]; // 设置控件开启状态填充色 swi.onTintColor = [UIColor greenColor]; // 设置控件关闭状态填充色 swi.tintColor = [UIColor redColor]; // 设置控件开关按钮颜色 swi.thumbTintColor = [UIColor orangeColor]; // 当控件值变化时触发changeColor方法 [swi addTarget:self action:@selector(changeColor:) forControlEvents:UIControlEventValueChanged]; [self.view addSubview:swi];}-(void)changeColor:(UISwitch *)swi{ if(swi.isOn){ self.view.backgroundColor = [UIColor redColor]; }else{ self.view.backgroundColor = [UIColor blueColor]; }}