叹气,我们不语好不好?

1、创建一个分类

(1)Cmd+N,iOS–>Objective-C File,Next;
(2)File Type选择category,class选择用的好像,分类名,Next。

  爱你,信你;缘你,随你~

最后

参考文档:http://www.cocoachina.com/ios/20161018/17784.html
这里总结了一些时常用之归类https://github.com/Mexiang/category,都是简约经常用的道,会频频总结创新github。

 
怀揣在惴惴不安的情怀,你拖在尽可能减少可仍笨重的使者在阴雨绵绵的天气遭遇至了要命就幻想了扳平潮以平等不好的高等学校。

使用(以UIView为例)

  愿荏苒时光,细细韵淌,甘俯也傻瓜,乐昂给目标,仅此而已。

分类(category)

  • 分类是为着扩大系统类的法要发生的同一种方式。

  • 分拣的打算就是是当无改动原有类的底蕴及,为一个像样扩展方法,最紧要的凡可以叫系统类扩展我们友好定义的办法。

  • 分拣中好看原本类的分子变量,但不得不看@protect以及@public形式之变量。

  • 如要是受分类添加成员变量,则需要写变量的get、set方法,否则添加的分子变量无法为调用。

  • 欲留意一下命名分类命名,如果项目遭到是给这个类似的一些职能写个分类,那么分类的命名最好不好直接命名吧category。比如来一个Person类,意思是人类,在person类中我们出一个方式,-(void)eat;意义是吃。因为每个人类都见面吃,人类有那么些伙特性,但是呢有成千上万不同点,比如,并无是每个人还见面踢足球,这时候我勾勒一个分拣,给喜欢运动的食指,这个分类的名叫sport。因为是Person类的分类,你会看出变化的名字叫做Person+sport。

  • 而被一个类定义了少数只分类,这简单独分类中分别实现了同一的一个法,调用方法上,这片只法子都见面叫执行,所以尽量避免这样的状态出现是正解。

  • 使分类时欲引入分类头文件。

  不,憧憬着,努力了,成长了,所以,你以这里,你,才是现在之您。

  也罢,走吧,回到生没有留宿过的起居室,等正在你的,谁知还有呀……

 
导员初次来访寝室的下,讲了如此一句被您小并未透彻理解的讲话“有一个投机的卧房,大学四年见面哼了得多。”是也?她的源远流长,也是指向你们的殷殷祝福。最初的相识,每个人且表现来十二万分的礼貌,或许讲成是客套更为可靠。你帮忙它帮,欢声笑语。寝室无厘头的玩乐,喧嚣正练各种语言,还有不时猛然从天而降的奇到误以为是哭的鬼笑。

 
“嗯哼,还吓我们是于此卧室”你开学前深深的顾虑仿佛打消了成百上千。一个室友的过境,让原先独一无二之“六仁”变回了人情的“五仁”月饼。

2、分类文件

立刻是被UIView的frame写的一个分拣

#import <UIKit/UIKit.h>

@interface UIView (Frame)

//添加的成员变量
@property CGFloat origin_x;
@property CGFloat origin_y;

@property CGFloat width;
@property CGFloat height;

//扩展的方法
/**
 *  @author MX, 16-05-29 15:05:22
 *
 *  位移(根据center移动)
 *
 *  @param point
 */
- (void)moveTo:(CGPoint) point;
/**
 *  @author MX, 16-05-29 15:05:27
 *
 *  指定比率放大或者缩小
 *
 *  @param scale    指定的比率
 */
- (void)scaleBy:(CGFloat) scale;

@end

#import "UIView+Frame.h"

@implementation UIView (Frame)

@dynamic origin_x;
@dynamic origin_y;
@dynamic width;
@dynamic height;

//实现set、get方法
- (CGFloat)origin_x
{
    return self.frame.origin.x;
}
- (CGFloat)origin_y
{
    return self.frame.origin.y;
}
- (CGFloat)width
{
    return self.frame.size.width;
}
- (CGFloat)height
{
    return self.frame.size.height;
}
- (CGFloat)toLeftMargin
{
    return self.frame.origin.x+self.frame.size.width;
}
- (CGFloat)toTopMargin
{
    return self.frame.origin.y+self.frame.size.height;
}


- (void)setWidth:(CGFloat)width
{   
    if (width != self.frame.size.width) {
        CGRect newframe = self.frame;
        newframe.size.width = width;
        self.frame = newframe;
    }
}
- (void)setHeight:(CGFloat)height
{  
    if (height != self.frame.size.height)
    {
        CGRect newframe = self.frame;
        newframe.size.height = height;
        self.frame = newframe;
    }
}
- (void)setOrigin_x:(CGFloat)origin_x
{  
    if (origin_x != self.frame.origin.x)
    {
        CGRect newframe = self.frame;
        newframe.origin.x = origin_x;
        self.frame = newframe;
    }
}
- (void)setOrigin_y:(CGFloat)origin_y
{   
    if (origin_y != self.frame.origin.y)
    {
        CGRect newframe = self.frame;
        newframe.origin.y = origin_y;
        self.frame = newframe;
    }
}

#pragma mark 扩展的方法
- (void)moveTo:(CGPoint) point
{
    if ((self.center.x != point.x) || (self.center.y != point.y))
    {
        [UIView animateWithDuration:.3 animations:^{
            CGPoint newCenter = self.center;
            newCenter.x += point.x;
            newCenter.y += point.y;
            self.center = newCenter;
        }];
    }
}
- (void)scaleBy:(CGFloat) scale
{
    if (scale >0 && scale != 1)
    {
        [UIView animateWithDuration:.3 animations:^{
            CGRect newframe = self.frame;
            newframe.size.width *= scale;
            newframe.size.height *= scale;
            self.frame = newframe;
        }];
    }
}

@end

地方对于UIView写的归类,添加了成员变量,而且扩展了UIView类的方式。

  随着时间之延迟,尚未牢固的岩壁便让同一根无意坠落的发碰裂出万步深渊。

 
你习以为常大大咧咧、傻呵呵的,当然会产生精致女孩来和公做比;你莫在心上的粗争论,却会于偶尔的辩执中毫无预兆地给生拉硬扯出来。你们不知晓其中的含义何,但,那真的有了。无言……

 
第一蹩脚莫名的冤枉,你装聋作哑,却忍不住内心的刺痛,算了吧,原谅呗~又平等次于纠结的挣扎,你张了张口,却总不知该如何劝导,算了咔嚓,忽小呗~

 
但实质上无论怎样自慰,闹矛盾,难让的不只是当事人,苦恼的还有许多总人口。你讨厌任何人任何形式之口角,更切贴地说话,是恐惧的成份又多有。因为,那样会危害很多群丁,无辜的,有罪之~

  用脚步踏出不羁的轨道,却尚无想去浪漫地丈量青春;用镜头记录平凡的史事,却绝非打算痴醉地恋恋不舍。

 
负同等缓慢小的背包,蹬在摩拜或小黄车悠悠地持续给市之巷口,按照地图索引,串联名胜遗址的缘惜,历史就都,魂旨逸脱。品一杯浓醇的老酸奶,夹一筷子香溢的泡馍,为了一解正宗意味之嘴馋,也真正是耐得住让人绝望的长篇大论的排队队伍吖!(美食的吸引,吃货的力量哈!)

 
以古都西安的路口兜兜转转,自由散漫,碰到好玩的物就各种娱乐,且当小憩了巡。

  不过,也时有发生那么些时候盲目跟被民众所蜂拥追拍的,其实并不一定符合您的期望。

 
哥哥要转洛阳底前天初始,你虽只是不鸣金收兵地伤感。面对即将来到的分手,你心慌意乱至极,却故作风轻云淡。还要谢915阿姨记得把不小心熟睡在车上的君叫醒,才不至于错过了归途的学校。一少有台阶,拾级而上,匆忙也非慌。

  内心空落落的,是坐你真如单独面对于这边未来几乎年的饮食起居了啊?

 
中心广场的异常屏幕及刚刚放映着如火如荼进行在的足球赛,挟裹着月亮的清辉与荧屏的烁翎,三叔俩俩儿的观众。抬头之那么瞬间,脑海中突然撞出了啊记忆,很陌生,很熟悉。下同样秒,你感动无比。对,就是是广场,那场足球赛,但驻足的人儿是否就是是曾经出现于梦境中之那些人儿?不得而知……

 
你拼命回忆:到底是呀时梦到了和这同样模型一样的观?你,笑了,惊了,质疑了,命中注定?既然冥冥之中你按照就属即所学,那高考之前若并线尽全力熬了的那些无法言说的磨难又算什么?

  啊!大学,前生十七年之渴冀;大学,梦中去不去之执念。