Masonry多個控制元件的等間隔排序顯示
阿新 • • 發佈:2019-02-06
多個(2個以上)控制元件的等間隔排序顯示 首先介紹2個函式 /** * axisType 軸線方向 * fixedSpacing 間隔大小 * fixedItemLength 每個控制元件的固定長度/寬度 * leadSpacing 頭部間隔 * tailSpacing 尾部間隔 * */ //1. 等間隔排列 - 多個控制元件間隔固定,控制元件長度/寬度變化 - (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedSpacing:(CGFloat)fixedSpacing leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing; //2. 等間隔排列 - 多個固定大小固定,間隔空隙變化 - (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedItemLength:(CGFloat)fixedItemLength leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing; //首先新增5個檢視 NSMutableArray *array = [NSMutableArray new]; for (int i = 0; i < 5; i ++) { UIView *view = [UIView new]; view.backgroundColor = [UIColor greenColor]; [self addSubview:view]; [array addObject:view]; //儲存新增的控制元件 } //水平方向控制元件間隔固定等間隔 [array mas_distributeViewsAlongAxis:MASAxisTypeHorizontal withFixedSpacing:15 leadSpacing:10 tailSpacing:10]; [array makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(50); make.height.equalTo(70); }]; //水平方向寬度固定等間隔 [array mas_distributeViewsAlongAxis:MASAxisTypeHorizontal withFixedItemLength:70 leadSpacing:10 tailSpacing:10]; [array makeConstraints:^(MASConstraintMaker *make) { //陣列額你不必須都是view make.top.equalTo(50); make.height.equalTo(70); }];