本节学习内容:
1.UISwitch控件的概念
2.UISwitch控件的创建
3.UISwitch控件属性
4.UISwitch应用
【ViewController.h】
#import<UIKit/UIKit.h>
@interface viewController:UIViewController{
//定义一个开关控件
//可以进入状态的改变 状态:开/关
//所有UIKit框架库中控件均已UI开头,苹果官方的控件都定义在UIKit库中
UISwitch *_mySwith;
}
@end
【ViewCintroller.m】
#import "viewController.h"
@interface viewConroller()
@end
//同步属性和成员变量
@propery(retain,nanatomic)UISwithc* mySwitch;
-(void)viewDidLoad{
[super viewDidLoad];
//创建一个开头对象,继承于UIView
_mySvitych=[[UISwitch alloc]init];
//苹果官方的控件的位置设置,位置X,Y的值可以改变,宽度和高度值无法改变
_mySvitych.fram=CGRectMake(100,100,80,40);
//开关状态设置属性 YES:开启状态,NO:关闭状态
_mySvitych.on=YES;
//也可以使用set函数
[_mySvitych setOn:YES];
//设置开关状态 P1:状态设置,P2:是否开启动画效果
[_mySvitych setOn:YES animated:YES];
//添加到视图
[self.view addSubview:_mySwith];
//设置开启状态的风格颜色
[_mySwith setOnTintColor:[UIColor redColor]];
//投置开头按钮颜色
[_mySwith setThumbTintColor:[UIConlor greenColor]];
//设置整个颜色风格
[_mySwith setTintColor:[UIConlor purpleColor]];
//向开关控件添加事件函数
//p1:函数实现对象addTarget:self
//p2:函数对象action:@selector(swChange)
//p3:事件响应时的事件类型UIControlEventValueChanged:状态发生变化时触发函数forControlEvents:UIControlEventValueChange
//不带参数
_mySwith addTarget:self action:@selector(swChange) forControlEvents:UIControlEventValueChange];
//带参数
_mySwith addTarget:self action:@selector(swChange:) forControlEvents:UIControlEventValueChange];
}
//不带参数
/*-(void)swChange{
NSLog(@"开关状态变化");
}*/
//参数传入开关对象本身
-(void)swChange(UISwithc*)sw{
if(sw.on==YES){
NSLog(@"开关打开");
}else{
NSLog(@"开关关闭");
}
}