UIButton的常用属性
一、UIButton简介
一个UIButton类实例实现触摸屏上的一个按钮。按钮截取触摸事件并发送一个动作消息到目标对象。设置目标和动作的方法继承自UIControl。这个类提供了方法来设置标题,图片,和按钮的其他外观属性。通过使用这些访问器,您可以指定一个不同的外观为每个按钮的状态。
二、创建UIButton
- 通用实例化对象方法:
UIButton *button = [[UIButton alloc] initWithFrame:rect];
- 快速实例化对象方法:
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
- 提示:
在OC开发中,实例化任何类型的非自定义对象,都请首先尝试一下是否存在快速定义方法。如果存在快速定义方法,就尽量不要使用init之类的方法实例化对象!
三、UIButton的常用属性1——按钮类型
- UIButtonTypeCustom
按钮的内容需要自定义 - UIButtonTypeRoundedRect
圆角矩形按钮 - UIButtonTypeDetailDisclosure
显示明细按钮 - UIButtonTypeInfoLight
亮色信息按钮,用于深色背景 - UIButtonTypeInfoDark
深色信息按钮,用户浅色背景 - UIButtonTypeContactAdd
添加按钮
说明:
–前两种类型的按钮最常用
–后四种类型的按钮设计,是为了保持用户统一的使用习惯
四、UIButton的常用属性2——按钮文字
•正常状态下按钮文字
[button setTitle:@"按钮" forState:UIControlStateNormal];
•长按按钮状态下的按钮文字
[button setTitle:@"有人摸我" forState:UIControlStateHighlighted];
•注意
–在设置按钮文字时,需要指定文字对应的按钮状态
五、UIButton的常用属性3——按钮文字颜色
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[button setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
•注意
–在设置按钮文字颜色时,同样需要指定颜色应用的按钮状态
六、UIButton的常用属性4——按钮背景颜色
[button setBackgroundColor:[UIColor orangeColor]];
•注意
–在设置背景颜色时,按钮需要是自定义类型
七、UIButton的常用属性5——设置图片及背景图像
// 加载图像
UIImage *image = [UIImage imageNamed:@"sub_black_add.png"];
// 设置按钮图像
[button setImage:image forState:UIControlStateNormal];
// 设置按钮背景图像
[button setBackgroundImage:image forState:UIControlStateNormal];
•注意
–背景图像会根据按钮的尺寸拉伸
–按钮图像会居中显示在按钮中央位置
–如果同时设置了按钮的图像和文字
•按钮区域足够大,会并列显示图像和文字
•如果区域不够大,优先显示图像
八、设置UIButton的监听器
// 设置按钮点击监听
[button addTarget:self action:@selector(tapButton) forControlEvents:UIControlEventTouchUpInside];
•注意
–调用自定义方法需要使用@selector指令
–注意void和IBAction的区别
–按钮事件最多只可以带一个参数