一、UIButton基础
与UILabel相同,UIButton对象也需要在ViewController中写一个创建函数来建立
UIButton对象的建立如下:
//创建普通按钮函数
- (void) createUIRectButton {
//创建一个btn对象,更具类型来创建btn
//圆角类型btn:UIButtonTypeRoundedRect
//通过类广告来创建buttinWithType:;类名+方法名
UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
}
下面是对button按钮的位置的设置:
//设置button按钮的位置
btn.frame = CGRectMake(100, 100, 100, 40);
下面我们设置按钮的文字内容,代码如下:
//下面的代码是按钮未按下时按钮上显示的字是“按钮01”,按钮按下的时候按钮上显示的字是“按钮按下”
//p是参数的意思,例如:p1表示的是第一个参数
//p1:字符串类型,现实到按钮上的文字
//p2:设置文字显示的状态类型:UIControlStateNormal,正常状态
[btn setTitle:@"按钮01" forState:UIControlStateNormal];
//P1:显示的文字
//P2:显示文字的状态:UIControlStateHighlighted,按下状态
[btn setTitle:@"按钮按下" forState:UIControlStateHighlighted];
下面我们设置一下按钮的背景颜色和按钮上文字显示的颜色等,代码如下:
//灰色背景颜色
btn.backgroundColor = [UIColor grayColor];
//设置文字显示的颜色
//p1:颜色
//p2:状态
[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
//设置按下状态的颜色
[btn setTitleColor:[UIColor orangeColor] forState:UIControlStateHighlighted];
//设置按钮的风格颜色(优先级低于setTitle类型的颜色设置)
[btn setTintColor:[UIColor whiteColor]];
下面设置按钮上的文字的大小,并将按钮添加到视图中显示,代码如下:
//设置按钮上文字的大小
//titleLabel:UILabel空间
btn.titleLabel.font = [UIFont systemFontOfSize:24];
//添加到视图中并显示
[self.view addSubview:btn];
下面我们创建一个可以显示图片的按钮:
//创建一个可以显示图片的按钮
- (void) createImageBtn {
//创建一个自定义类型的btn
UIButton* btnImage = [UIButton buttonWithType:UIButtonTypeCustom];
//设置按钮位置
btnImage.frame = CGRectMake(100, 200, 100, 100);
}
添加按钮的对应图片时,首先下载jpeg格式的图片将其拖到下图所示的位置:
添加图片按钮的代码如下:
//添加按钮图片
UIImage* icon01 = [UIImage imageNamed:@"9696.jpeg"];
UIImage* icon02 = [UIImage imageNamed:@"ceb0.jpeg"];
//设置按钮图片方法设置(下面的p是参数的意思)
//p1:显示的图片对象
//p2:控件的状态
[btnImage setImage:icon01 forState:UIControlStateNormal];
[btnImage setImage:icon02 forState:UIControlStateHighlighted];
//将按钮添加到视图当中并显示
[self.view addSubview:btnImage];
最后在ViewController.h文件的viewDidLoad中调用我们上面创建的两个函数即可:
- (void)viewDidLoad {
[super viewDidLoad];
//调用上面创建的两个函数
[self createUIRectButton];
[self createImageBtn];
}
二、完整的代码案例
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
//创建普通按钮函数
- (void) createUIRectButton {
//创建一个btn对象,更具类型来创建btn
//圆角类型btn:UIButtonTypeRoundedRect
//通过类广告来创建buttinWithType:;类名+方法名
UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//设置button按钮的位置
btn.frame = CGRectMake(100, 100, 100, 40);
//设置按钮的文字内容
//@parameter
//p1:字符串类型,现实到按钮上的文字
//p2:设置文字显示的状态类型:UIControlStateNormal,正常状态
[btn setTitle:@"按钮01" forState:UIControlStateNormal];
//P1:显示的文字
//P2:显示文字的状态:UIControlStateHighlighted,按下状态
[btn setTitle:@"按钮按下" forState:UIControlStateHighlighted];
//灰色背景颜色
btn.backgroundColor = [UIColor grayColor];
//设置文字显示的颜色
//p1:颜色
//p2:状态
[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
//设置按下状态的颜色
[btn setTitleColor:[UIColor orangeColor] forState:UIControlStateHighlighted];
//设置按钮的风格颜色(优先级低于setTitle类型的颜色设置)
[btn setTintColor:[UIColor whiteColor]];
//titleLabel:UILabel空间
btn.titleLabel.font = [UIFont systemFontOfSize:24];
//添加到视图中并显示
[self.view addSubview:btn];
}
//创建一个可以显示图片的按钮
- (void) createImageBtn {
//创建一个自定义类型的btn
UIButton* btnImage = [UIButton buttonWithType:UIButtonTypeCustom];
btnImage.frame = CGRectMake(100, 200, 100, 100);
UIImage* icon01 = [UIImage imageNamed:@"9696.jpeg"];
UIImage* icon02 = [UIImage imageNamed:@"ceb0.jpeg"];
//设置按钮图片方法设置
//p1:显示的图片对象
//p2:控件的状态
[btnImage setImage:icon01 forState:UIControlStateNormal];
[btnImage setImage:icon02 forState:UIControlStateHighlighted];
[self.view addSubview:btnImage];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self createUIRectButton];
[self createImageBtn];
// Do any additional setup after loading the view.
}
@end
上面代码的运行结果为:
不执行操作时结果为:
点击按钮01时的运行结果为:
按下图形按钮后的运行结果为: