标签:
按钮UIButton在app的出镜率也相当高。作用是响应用户点击的控件。
创建UIButton,遵循一下几个步骤:
1、一般用便利构造器来创建一个button对象。
2、设置按钮的属性
3、为按钮添加点击事件
4、把按钮添加到父视图,得以显示
5、无需释放。
// 便利构造器创建一个button
UIButton *button1 = [UIButton
buttonWithType:UIButtonTypeSystem];
button1.frame = CGRectMake(100, 100, 100, 50);
button1.backgroundColor = [UIColor clearColor];
// 设置button文字
[button1 setTitle:@"点我撒" forState:UIControlStateNormal];
//点击时才会显示
[button1 setTitle:@"点我撒" forState:UIControlStateHighlighted];
//隐形
[button1 setTitle:@"点我撒" forState:UIControlStateSelected];
// 设置图片
// 必须使用镂空图片
[button1 setImage:[UIImage imageNamed:@"user.png"] forState:UIControlStateNormal];
//获取这个代替这个按钮的图片。
UIImage *normalImage = [loginButton imageForState:UIControlStateNormal];
//设置背景图片(不用镂空的)
// 用来代替按钮
[button1 setBackgroundImage:[UIImage imageNamed:@"1.png"] forState:(UIControlStateNormal)];
// 添加点击事件
[button1 addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
[self.window addSubview:button1];
// 点击button响应方法
// 点击button的时候,会把button1当作参数传进来给sender
- (void)buttonAction:(UIButton *)sender{
//点击后产生随机颜色 self.window.backgroundColor = [UIColor colorWithRed: arc4random() % 256 / 255.0 green: arc4random() % 256 / 255.0 blue: arc4random() % 256 / 255.0 alpha:1];
NSLog(@"GOOD");
// 获取点击事件文字
NSString *str = [sender titleForState:UIControlStateNormal];
NSLog(@"%@",str);
// 移除点击事件
[sender removeTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
NSLog(@"%ld",sender.tag);
}
解释:
1、self指的是指定本类来实现这个点击事件
2、buttonAction方法来实现点击事件想要做的事。
//设定指定状态下的button的标题,就是button里显示什么字。
[loginButton setTitle:@“登录”forState:UIControlStateNormal];
//获取指定状态下的button的标题,也就是button里的字。
NSString *normalTitle = [loginButton titleForState:UIControlStateNormal];
//设定某个状态下的button的标题颜色,就是button里的字的颜色。
[loginButton setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
//获取某个状态下的button的标题的颜色,就是button里的字的颜色。////
UIColor *normalTitleColor = [loginButton titleColorForState:UIControlStateNormal];
//设定指定状态下的button的标题的阴影颜色
[loginButton setTitleShadowColor:[UIColor redColor] forState:UIControlStateNormal];
//获取指定状态下的标题阴影颜?////
UIColor *normalTitleShadowColor = [loginButton titleColorForState:UIControlStateNormal];
//用图片来代替按钮,这样代替的图片,必须是镂空的图片才有效果。
标签:
原文地址:http://www.cnblogs.com/Coder-GT/p/4866258.html