IOS开发实战:UISwitch开关控件

一,创建UISwitch开关控件项目

1,打开Xcode,创建名为UISwitch的工程
如何创建工程:Xcode创建HelloWorld项目

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,运行代码:
关闭状态:
IOS开发实战:UISwitch开关控件_第1张图片
开启状态:
IOS开发实战:UISwitch开关控件_第2张图片


二,为UISwitch添加触发方法

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];
    }
}

运行代码:

IOS开发实战:UISwitch开关控件_第3张图片

IOS开发实战:UISwitch开关控件_第4张图片


三,全部代码:

- (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];
    }
}

你可能感兴趣的:(IOS)