iOS-个人整理08 - UIControl与子类:UIControlEvents事件,UISwitch

一、UIControl

UIControl是有控制功能的视图的父类,它的子类有UIButton,UISwitch,UISlider等等
只要与控制相关的控件都是它的子类
发生三种事件会触发响应:触摸事件,值改变,编辑内容

UIControl的常用方法
1.添加一个事件
(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;
target:目标对象
action:方法选择器,也就是执行的方法
controlEvents:触发方法的事件
2.移除一个事件

  • (void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;
    参数的意义相同

下面介绍它的触发事件UIControlEvents


//触摸从控件内部拖到到外部
UIControlEventTouchDragExit
//控件内触摸抬起时UIControlEventTouchUpInside
//控件之外触摸抬起时UIControlEventTouchUpOutside
//触摸取消事件,设备被上锁或来电话等UIControlEventTouchCancel
//用户按下时触发
UIControlEventTouchDown
//点击计数大于1时触发UIControlEventTouchDownRepeat
//触摸在控件内拖动时,常用UIControlEventTouchDragInside
//触摸在控件之外拖动时UIControlEventTouchDragOutside
//触摸从控件之外拖到内部时UIControlEventTouchDragEnter
//控件的值发生变化时,常用于Slider,segment等
UIControlEventValueChanged
//文本控件开始编辑时
UIControlEventEditingDidBegin
//控件中文本被改变
UIControlEventEditingChanged
//文本控件编辑结束
UIControlEventEditingDidEnd
//文本控件内通过按下回车键结束编辑时
UIControlEventEditingDidOnExit
//所有触摸事件
UIControlEventAllTouchEvents
//所有编辑事件
UIControlEventAllEditingEvents
//所有事件
UIControlEventAllEvents

二、UISwitch

先介绍一个简单的控件,UISwitch顾名思义是一个开关,用法比较简单
常用方法和属性:


//UISwitch初始化  
    UISwitch *mySwitch = [[UISwitch alloc]initWithFrame:CGRectMake(100, 200, 0,0)];  
  
    mySwitch.onTintColor = [UIColor redColor];//设置开关开启状态的颜色  
      
    mySwitch.tintColor = [UIColor grayColor];//设置开关风格颜色,动画中的变化颜色  
      
    mySwitch.thumbTintColor = [UIColor yellowColor];//设置开关按钮颜色  
      
    mySwitch.on = YES;//开关的状态  
      
    [mySwitch setOn:NO animated:YES];//手动设置开关状态  
      
    [self.view addSubview:mySwitch];  

开关设置后的两种状态:


iOS-个人整理08 - UIControl与子类:UIControlEvents事件,UISwitch_第1张图片

下一篇介绍UIControl的另外两个子类:UISlider和UISegmentControl

你可能感兴趣的:(iOS-个人整理08 - UIControl与子类:UIControlEvents事件,UISwitch)