NSArray+MASAdditions.h ,数组中需要约束的UI控件
/**
* distribute with fixed spacing 指定间距分布
*
* @param axisType 布局方向,横排还是竖排
* @param fixedSpacing 控件之间的间隔
* @param leadSpacing 第一个控件距离左边的距离
* @param tailSpacing 最后一个控件距离右边的距离
*/
- (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedSpacing:(CGFloat)fixedSpacing leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing;
/**
* distribute with fixed item size 按宽高分布
*
* @param axisType 布局方向,横排还是竖排
* @param fixedItemLength 控件的宽/高
* @param leadSpacing 第一个控件距离左边的距离
* @param tailSpacing 最后一个控件距离右边的距离
*/
- (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedItemLength:(CGFloat)fixedItemLength leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing;
- 平分button
#import "ZheadDataSearch.h"
#import "NSArray+MASAdditions.h"
@implementation ZheadDataSearch{
NSMutableArray*ButtonArr;
//用来存放 按钮视图
NSMutableArray*masonryButtonArray;
}
- (id)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
if (self) {
self.backgroundColor = ZWhiteColor(255);
[self initButtonArr];
[self masonryBtnArray];
[self setupHorizontalView];
}
return self;
}
-(void)initButtonArr{
if(!ButtonArr){
ButtonArr=[[NSMutableArray alloc] initWithObjects:@"上月",@"本月",@"近3个月",@"近半年", nil];
}
}
//
-(NSMutableArray*)masonryBtnArray{
CGFloat buttonW = WIDTH_VALUE(75);
masonryButtonArray= [NSMutableArray array];
for (int i = 0; i < ButtonArr.count; i++ ){
UIButton *dataButton = [[UIButton alloc] init];
dataButton.tag = 200+i;
dataButton.backgroundColor=[UIColor redColor];
[dataButton setTitle:ButtonArr[i] forState:UIControlStateNormal];
[dataButton setTitleColor:[UIColor colorWithRed:69.0/255.0 green:69.0/255.0 blue:69.0/255.0 alpha:1.0] forState:UIControlStateNormal];
[dataButton.titleLabel setFont:[UIFont systemFontOfSize:14]];
[dataButton addTarget:self action:@selector(clickedSelectButton:) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:dataButton];
[masonryButtonArray addObject:dataButton];
}
return masonryButtonArray;
}
- (void)setupHorizontalView{
//设置排列方向和间隔
[masonryButtonArray mas_distributeViewsAlongAxis:MASAxisTypeHorizontal withFixedSpacing:30 leadSpacing:10 tailSpacing:10];
// 设置到顶部的距离和控件的高度
[masonryButtonArray mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(HEIGHT_VALUE(10));
make.height.mas_equalTo(HEIGHT_VALUE(25));
}];
}