IOS 我不知道的CateGory

CateGory是类别,是为现有类添加的方式,这是一种比继承更为简洁的方法,来对类进行扩展,无需使用子类添加新方法,就能为现有的方法添加新方法,还可以进行方法的重写。

类别的优缺点

  • 缺点

    • 无法向(@interface)类中添加新的实体变量(成员属性)

    • 名称冲突,类别中的方法与原始类方法名称冲突时,由于类别拥有更高的优先级,类别方法将完全取代原始方法,从而无法再使用原始方法。

  • 优点

    • 可以将类的实现分散到不同文件中(可以建立N个CateGory) 记住(#import)

接下来,就由我来列举一下我们项目中使用CateGory的方法吧

  • 加载图片的方法

#import "UIImageView+AFNetworking.h"使用cateGory(类别)方法加载图片

- (void)setImageWithURL:(NSURL *)url {
    [self setImageWithURL:url placeholderImage:nil];
[cell.imageview setImageWithURL:[NSURL URLWithString:
dic[@"logoPath"]]];   
 }
  • 校验是否为有效的手机号 #import "NSString+MALNSString.h"
(![_TextFieldThree.text isMobilePhoneNumber])

  • 设置导航栏背景图片 ,和Title#import "UIViewController+MALNavigation.h"
[UIViewController setNavigationBarBgImage:self.
navigationController andBgImage:[UIImage imageNamed:@"图片名字"]];
[self setCenterItemWithTitle:@""];

  • 创建CateGory@interface UIImageView_Bg:UIImageView
    把_删除在Bg处用()括住,把继承删除
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,169评论 19 139
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,841评论 0 9
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,241评论 30 472
  • 一 类别的简介 在开发中有时会用到Category,类别有三个作用: (1)可以将类的实现分散到多个不同文件或多个...
    々莫等闲々阅读 458评论 0 0
  • 今天水浅的文章是关于24岁的故事。索性,写写我的24岁。 大学毕业后的第三年,现在看来是事业的转折点,但当时看来前...
    夏靥人间阅读 214评论 0 0