利用點語法創建UILabel

類似Masonry中點點語法使用

原理,每個點語法是一個返回自身的block
改造UILabel使用方法
先創建了UILabel的分類
UILabel+RFAdd

.h中

- (UILabel *(^)(CGFloat x,CGFloat y,CGFloat width,CGFloat height))RF_Frame;

- (UILabel *(^)(CGFloat size))RF_Font;

- (UILabel *(^)(UIColor *color))RF_textColor;


.m中

- (UILabel *(^)(CGFloat x,CGFloat y,CGFloat width,CGFloat height))RF_Frame{

    return ^id(CGFloat x,CGFloat y,CGFloat width,CGFloat height){

        self.frame = CGRectMake(x, y, width, height);

        return self;

    };

}

- (UILabel *(^)(CGFloat size))RF_Font{

    return ^id(CGFloat size){

        self.font = [UIFont systemFontOfSize:size];

        return self;

    };

}

- (UILabel *(^)(UIColor *color))RF_textColor{

    return ^id(UIColor *color){

        self.textColor = color;

        return self;

    };

}



使用

 UILabel *pLabel = [[UILabel alloc]init]

    .RF_Frame(20,10,200,30)

    .RF_Font(14)

    .RF_textColor([UIColor redColor])

    .RF_text(@"UILabel");

    [_scrollView addSubview:pLabel];




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章