您的位置:首页 > 其它

button控件的一些开发中常用技巧

2016-01-19 11:51 495 查看
实例化一个按钮
UIButton *Btn = [[UIButton alloc] init];

[/code]

// 设置位置与大小,按设计原则转为变量

CGFloat BtnX = 12;

CGFloat BtnY = 30;

CGFloat BtnW = 40;

CGFloat BtnH = 40;

Btn.frame = CGRectMake(BtnX, BtnY, BtnW, BtnH);

[/code]
设计一个按钮通常需要注意两种状态
1.normal(即未点击)
2.Highlighted(高亮)
一般情况下高亮自动继承未点击时的设置,我们在开发的时候,常需要在两种状态的时候替换图片达到点击时的视觉效果;
// 设置默认的背景

UIImage *normalImage = [UIImage imageNamed:@"buttongreen"];

[Btn setBackgroundImage:normalImage forState:UIControlStateNormal];

// 设置高亮的背景

UIImage *highImage = [UIImage imageNamed:@"buttongreen_highlighted"];

[Btn setBackgroundImage:highImage forState:UIControlStateHighlighted];

[/code]
然后是添加文字与修改字体,这里有个陷阱
@property(nullable, nonatomic,readonly,strong) UILabel     *titleLabel NS_AVAILABLE_IOS(3_0);

@property(nullable, nonatomic,readonly,strong) UIImageView *imageView  NS_AVAILABLE_IOS(3_0);

[/code]
官方文档中的关于button之所以能同时显示图片和文字的解释,
//不推荐直接获取按钮label来设置文字,因为它没有状态,可能会出现难以预料的现象

Btn.titleLabel.text = @"";

//设置按钮的文字推荐使用

[Btn setTitle:@"下载" forState:UIControlStateNormal];

[/code]
然后就是设置字体

downloadBtn.titleLabel.font = [UIFont systemFontOfSize:14];

[/code]

然后根据情况加载至任意父view中

[xView addSubview:Btn];

[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: