IOS UIControl、UIButton

来源:互联网 发布:汇编语言编程 编辑:程序博客网 时间:2024/05/22 08:29
UIControl、UIButton
一、UIControl

     UIControl :控制类 可以触摸一个视图执行某个任务 点击某个视图 可以触发一个事件

     UIControl :是一个可以带有触发事件的视图

     UIControl的子类:UIButton(按钮) UISwitch(开关) UISegmentedControl(分段选择控件) UISlider(滑杆) UITextField(文本输入的控件)

     UIPageControl(页面控制:点点)  这些视图都可以点击触发事件

     UIControl常用属性:

     1enabled启用 激活是用来设置视图是否启用触发事件 默认值是YES 如果设置成NO就是禁用这个视图的触发事件

     2selected:选中(状态)是不是选中了这个控件 默认值是NO 

     3highlighted:高亮(状态)默认值是NO

     UIControl的重要方法:给视图添加响应事件的方法

     - (void)addTarget:(nullable id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

     1Target:目标 ->让谁去调用一个方法

     2action:行动 ->要让这个目标做什么事儿

     3SEL:运行时 -> @selecter() ->选择者(方法选择器) 作用:用来选择一个方法

     4ControlEvents:控制事件 ->执行行动的方式


二、UIButton
       UIButton是按钮 是UIControl的一个子类 也可以理解成系统封装的一个特殊的UIControl 里面可以设置文字、图片添加响应事件等等。
1、初始化

有一个类方法 :+ (instancetype)buttonWithType:(UIButtonType)buttonType;

例如: UIButton *btn = [UIButtonbuttonWithType:UIButtonTypeCustom];

buttonWithType:后面跟的是按钮的样式  这些类型主要有:

    UIButtonTypeCustom //系统定制的样式

    UIButtonTypeSystem //系统默认的样式

                 UIButtonTypeDetailDisclosure //显示详细信息的样式

 UIButtonTypeInfoLight  //高亮的

UIButtonTypeInfoDark   //灰暗

 UIButtonTypeRoundedRect //圆角

2、UIButton的一些基本属性

1)、设置文字

[button1 setTitle:@"登录" forState:UIControlStateNormal];//普通状态下显示文字

forState:后面是什么状态下显示设置的文字 主要状态有:

   UIControlStateNormal   //普通状态    

    UIControlStateHighlighted    //高亮状态(一直点击按钮不放的时候叫做高亮状态)            

    UIControlStateDisabled    //取消禁用状态

    UIControlStateSelected  //选中状态

[button setTitleColor:[UIColor purpleColor] forState:UIControlStateHighlighted];

//设置字体颜色

  [button setTitleShadowColor:[UIColor purpleColor] forState:UIControlStateHighlighted];//设置字体阴影颜色

2)、设置图片

 [button setImage:图片 forState:UIControlStateNormal];

 button.showsTouchWhenHighlighted = YES; //当点击的时候有高亮

[button setBackgroundImage:图片 forState:UIControlStateNormal]; //设置背景图片

3)、设置背景颜色

button.backgroundColor = [UIColor brownColor];

4)、获得点击状态

button.selected 可以获得当前按钮的点击状态

5)、添加响应事件

[button addTarget:self action:@selector(login:) forControlEvents:UIControlEventTouchDown];//当按钮按下的时候触发响应事件

















1 0