自定义一个文字居左图片居右的按钮
2016-04-09 10:20
337 查看
1.自定义按钮
2.使用
// // TitleButton.h // 自定义文字在左图片在右的按钮 #import <UIKit/UIKit.h> @interface TitleButton : UIButton @end
// // TitleButton.m #import "TitleButton.h" @implementation TitleButton - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // 图片内容模式:居中 self.imageView.contentMode = UIViewContentModeCenter; [self setImage:[UIImage imageNamed:@"nav_screening_down_normal"] forState:UIControlStateNormal]; [self setImage:[UIImage imageNamed:@"nav_screening_down_pressed"] forState:UIControlStateHighlighted]; [self setImage:[UIImage imageNamed:@"nav_screening_up_normal"] forState:UIControlStateSelected]; // 文字颜色 [self setTitleColor:[UIColor colorWithRed:251/255.0 green:85/255.0 blue:8/255.0 alpha:1.0] forState:UIControlStateNormal]; // 文字大小 self.titleLabel.font = [UIFont systemFontOfSize:14]; // 文字居中对齐 self.titleLabel.textAlignment = NSTextAlignmentRight; } return self; } - (CGRect)titleRectForContentRect:(CGRect)contentRect { CGFloat titleW = contentRect.size.width - 11 - 5; CGFloat titleH = contentRect.size.height; return CGRectMake(0, 0, titleW, titleH); } - (CGRect)imageRectForContentRect:(CGRect)contentRect { CGFloat imageW = 11; CGFloat imageH = contentRect.size.height; CGFloat imageX = contentRect.size.width - imageW; return CGRectMake(imageX, 0, imageW, imageH); } @end
2.使用
TitleButton *navRight = [[TitleButton alloc] initWithFrame:CGRectMake(0, 0, 100, 44)]; [navRight setTitle:@"北京" forState:UIControlStateNormal];
相关文章推荐
- ZooKeeper是什么?
- xcode打包之后iOS的App字体变大的原因
- post和get的区别
- android fragment生命周期
- jsp的include两种使用方法
- 【POJ1077】Eight【IDA*】
- 获取Android控件的宽和高
- xml不能里面的上下间隔问题 ,如果存在需要隐藏的项的时候 ,最好是在隐藏项加layout_marginBottom,而不用在下面那项加top
- 山东省第四届ACM大学生程序设计竞赛 Rescue The Princess
- 换行问题
- 网络图片赋值SDWebImageDownloader
- c# 扩展方法详解
- 堆栈模拟队列
- Oracle 数据文件管理
- 有用架包,留着有时间以后看
- kvc(键-值编码)
- 谓词 (NSPredicate)使用详情
- HDU 2544 最短路
- 使用Jsonp实现跨域请求
- Win10一周年更新移动版14316截图曝光 包含不少新变化