iOS 学习链式编程 - 简单创建九宫格

一.知识储备
1.链式编程概念:
是将多个操作(多行代码)通过点号(.)链接在一起成为一句代码,使代码可读性好。

例如,a(1).b(2).c(3);

2.链式编程的特点:
方法的返回值是block,block必须有返回值(本身对象),block参数(需要操作的值)。

3.代表框架:Masonry。

二.代码部分
声明:

#import 

@interface GHJiuGongGeView : UIView
@property (nonatomic , strong) NSArray *buttonsArray;
@property (nonatomic , strong) NSArray *imagesArray;
@property (nonatomic , copy) void(^selected)(UIButton *button,NSInteger index);

+ (instancetype)jiuGongGeViewWithFrame:(CGRect)frame;

/// 要传入的数组(字典)
- (GHJiuGongGeView *(^)())array;
/// 距离两边的距离
- (GHJiuGongGeView *(^)(CGFloat marginX))marginX;
/// 距离顶部的距离
- (GHJiuGongGeView *(^)(CGFloat marginY))marginY;
/// 要创建列数
- (GHJiuGongGeView *(^)())column;
/// 高度
- (GHJiuGongGeView *(^)(CGFloat h))h;
@end

实现部分代码

- (GHJiuGongGeView *(^)())array {
    return ^GHJiuGongGeView *(NSArray *buttonArray){
        _imagesArray = buttonArray;
        return self;
    };
}

说明:
第一步:创建了一个block, 这个block里创建了一个GHJiuGongGeView *对象并返回出来。
第二步:这个对象调用方法array时,做了一次赋值运算,并且返回自己,以便可以接下去继续调用方法。

三.gitHub地址:https://github.com/GHZhaozhiwei/Codes.git

四.参考文章:
1.http://www.cocoachina.com/ios/20160224/15408.html
2.http://www.knowsky.com/884137.html

你可能感兴趣的:(iOS 学习链式编程 - 简单创建九宫格)