标签:
UIButton
(1) 创建显示一个Button
//演示UI中按钮类UIButton使用
//需求: 想要在界面上显示一个按钮
//解决: 使用UIButton按钮类
//<1>创建按钮,一般需要指定按钮的风格
//系统样式的按钮: UIButtonTypeSystem
//如果创建带图片的: 一般选用UIButtonTypeCustom
//圆角矩形: ios7不再使用 UIButtonTypeRoundedRect
//UIButtonTypeInfoDark 多显示一个圆圈和i
//UIButtonTypeContactAdd 多显示一个圆圈和+号
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
//设置按钮位置和大小
button.frame = CGRectMake(100, 100, 100, 30);
//设置按钮显示的文本
//按钮随着点击有各种不同的状态
//设置显示的文本时候设置不同状态下的文本
//细节: 按钮常用状态 正常, 高亮, 禁止
[button setTitle:@"点我啊" forState:UIControlStateNormal];
[button setTitle:@"被点了" forState:UIControlStateHighlighted];
button.backgroundColor = [UIColor whiteColor];
//显示按钮
[self.window addSubview:button];
//[button release]; //类方法创建的按钮不要release
(2) 按钮添加事件处理方法
//添加一个处理按钮点击事件的方法
//参数是事件的来源, 点击了按钮之后触发的
-(void)buttonClick:(UIButton *)button
{
NSLog(@"buttonClick");
}
//目的: 按钮点击了之后要执行buttonClick:
//干的事情: 告诉按钮点击了之后执行buttonClick:
//经常要处理的一个事件就是 点击后弹起
//参数3: forControlEvents指定需要处理的事件的类型
//参数1和: 指定哪个对象的哪个方法去处理点击的事件
//self中@selector(buttonClick:)处理按钮的点击事件
//简单来说: 一旦button按钮被点击了,
// self中buttonClick:就会被执行
[button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];
(3) 设置文本颜色和字体
//设置按钮文本颜色和字体
[button setTitleColor:[UIColor yellowColor] forState:UIControlStateNormal];
//说明: 按钮中为了显示文本, 包含了一个标签
button.titleLabel.font = [UIFont systemFontOfSize:24];
(4) 启用/禁用按钮
//<4>设置按钮是否可用(是否能够被点击)
//button.enabled = NO;
(5) 点击时高亮显示效果
//<5>设置按钮点击之后发光效果
button.showsTouchWhenHighlighted = YES;
(6) 按钮添加提示图片
注意: 项目使用图片时, 要把图片文件拖入项目中
//演示带有图片的按钮的使用
//带有图片的按钮
//注意: 类型选择UIButtonTypeCustom
//细节: UIButtonTypeSystem按钮的默认颜色是蓝色
// UIButtonTypeCustom按钮的默认颜色是白色
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
button.frame = CGRectMake(100, 100, 150, 30);
[button setTitle:@"我是按钮" forState:UIControlStateNormal];
[button setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
[self.window addSubview:button];
(7) 使用图片生成自定义按钮Custom
//如果想要给按钮添加背景图
//<1>图片资源添加工程中(拖进来即可....)
//从back.png生成了UIImage对象
UIImage *image = [UIImage imageNamed:@"back.png"];
[button setBackgroundImage:image forState:UIControlStateNormal];
//<2>设置按钮的图片(不是背景图, 显示在文本左边的图片)
[button setImage:[UIImage imageNamed:@"logo.png"] forState:UIControlStateNormal];
//按钮使用需要注意的问题
//问题:
//1.一点击奔溃了
// 如果按钮事件处理方法有参数.写@selector不要忘了冒号
// 方法名没有写正确, 可能大小写错误了
//2.点击了之后没反应
// 事件类型写错了
// 没有执行addTarget这个方法
//3.通过类方法创建的按钮是不需要释放的
// 一旦释放, 可能出现无法显示或无法点击的问题
标签:
原文地址:http://www.cnblogs.com/ngdngd/p/5575251.html