您的位置:首页 > 产品设计 > UI/UE

UIButton的运用

2016-05-13 01:16 337 查看

UIButton的运用

本节知识点:

UIButton的基本用法

UIButton的代码创建

1. UIButton的基本用法

按钮既能显示文字,又能显示图片

可以改变位置

type属性

知识点:Detail Disclosure/info Light/info Dark长一样(iOS7以前不一样,扁平化以后都一样,残留的东西)

自定义按钮

type自动改成了custom

按钮的状态

高亮状态:改变文字和图片、背景图片(区别系统自带效果)

拖线打印,引出disable Enable的属性变为NO

设置disable状态下的文字

改变文字

通过代码改变按钮的状态

2. UIButton的代码创建

代码创建

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
//等价 UIButton *btn = [[UIButton alloc] init];


创建一个按钮

图片、背景图片、标题、标题颜色和设置尺寸

监听按钮点击

只要按钮触发了UIControlEventTouchUpInside事件,就会调用self对象的buttonClick方法

[btn addTarget:self action:@selector(buttonClick) forCOntrolEvents:UIControlEventTouchUpInside];


按钮、lable、UIImageView的区别

UIButton

既能显示文字,又能显示图片(能显示2张图片,背景图片、内容图片)

长按高亮的时候可以切换图片\文字

直接通过addTarget…方法监听点击

UIImageView

能显示图片,不能直接通过addTarget…方法监听点击

UILabel

能显示文字,不能直接通过addTarget…方法监听点击

调用带参数的方法

//谁调用参数传的就是谁,这里btn调用所以buttonClick:(参数){}传的就是btn
[btn addTarget:self action:@selector(buttonClick:) forCOntrolEvents:UIControlEventTouchUpInside];


示例

// 1. 创建按钮
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
//    UIButton *button = [[UIButton alloc]init];// 和上面一行代码等价

//    注意:按钮创建好之后,按钮的类型是不可以被修改
//    button.buttonType = UIButtonTypeCustom ; // 错误写法,系统会报错

// 2. 设置位置尺寸
button.frame = CGRectMake(100, 200, 200, 50);

// 3. 设置文字
// 3.1 常态的文字
[button setTitle:@"我是按钮" forState:UIControlStateNormal];
// 3.2 高亮状态的文字
[button setTitle:@"我是高亮按钮" forState:UIControlStateHighlighted];

// 4. 设置字体颜色
// 4.1 常态的字体颜色
[button setTitleColor:[UIColor greenColor] forState:UIControlStateNormal];
// 4.2 高亮状态的字体颜色
[button setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];

// 4. 设置图片
// 4.1 常态下的图片
[button setImage:[UIImage imageNamed:@"like"] forState:UIControlStateNormal];
// 4.2 高亮下的图片
[button setImage:[UIImage imageNamed:@"like_pressed"] forState:UIControlStateHighlighted];

// 5. 设置背景图片
// 5.1 常态下的背景图
[button setBackgroundImage:[UIImage imageNamed:@"buttongreen"] forState:UIControlStateNormal];
// 5.2 高亮下的背景图
[button setBackgroundImage:[UIImage imageNamed:@"buttongreen_hightlighted"] forState:UIControlStateHighlighted];

// 6. 设置按钮点击状态, 默认就是YES ,NO 状态是不可点击
button.enabled = YES;

// 7. 将按钮添加入控制器view中
[self.view addSubview:button];

// 8. 监听按钮点击事件
[button addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息