美文网首页与时俱进的IT
UI(十)类目延展协议

UI(十)类目延展协议

作者: 社会主义顶梁鹿 | 来源:发表于2018-07-30 17:47 被阅读0次

  协议  类目  延展

 #pragma mark---协议----

 *协议:正式协议 <协议名> 是一个公共接口文件,只要遵守这个协议就可以使用里面的协议方法 不用再去声明就可以让外部类使用《现在的ios越来越看重协议》

 #pragma mark---类目----

 *类目:非正式协议 (类目名) 对一个类(原有类-什么都没有) 方法的扩展

 类目:category

 1、命名规则:类名+类目的名称(要扩展的哪一个方向)

 2、什么时候使用类目

 ①、团队开发同一个任务(同一个类),又想不互相影响->就可以使用类目

 ②、扩展系统类里面的方法->OC是不开源的不能修改原有类的.m文件增加方法实现->使用类目

 3、调用的时候使用原有类去调用(类方法 - 原有类的类名调用)(对象方法 - 原有类的对象 调用)

 4、创建一个类目-> command+N ->object-c file -> category -> 第一个输入内容:类目的名字 第二个输入的内容:要扩展的类

 😱注:只允许添加方法 不允许添加变量

 扩展:[UIImage imageNamed:@""];会把图片直接缓存到内存 占用运行时的内存(超过30M会崩溃)

 imageNamed:添加图标

 [UIImage imageWithContentsOfFile:图片路径];

 封装一个图片的类方法

 //尽量不要写跟原有类相同的方法名---会替换掉原来方法的功能---会优先调用类目的方法

 + (UIImage *)imageWithName:(NSString *)name{

NSString *path = [[NSBundle mainBundle]pathForResource:name ofType:nil];

return [UIImage imageWithContentsOfFile:path];

 }

 #pragma mark----延展---

 *延展:给一个类,声明私有的方法和变量。在.m文件里面添加一个私有的接口文件(@interface类名() @end)

 延展:Extension

 延展->用来定义私有方法和变量的

 公式:在.m文件中 添加

 @interface 类名 ()

 {

 私有的变量名

 }

 私有的方法

 @end

 好处(目的):隐藏类内容的实现

@interface ViewController ()

@end

#pragma mark---UIPagecontrol->UIControl---

类目:

 对一个类(原有类) 进行方法的扩展 -> 不能添加变量 只能添加方法 -> 原有类的对象名 调用添加的方法

 如果想添加变量 -> 继承 -> 子类的对象名 调用添加的方法

 使用环境:1、扩展系统类的方法

 2、团队开发->扩展队友的类

 目的:保证 不破坏 原有类

/*实现步骤:

     *1、明确数组是一个有内容的对象->不需要传一个数组,数组本身有内容->可以直接使用数组本身

     *2、确定使用对象方法

     *3、需要遍历数组->返回一个字符串

     *4、字符串的格式要与数组输出的格式对应

     */

//尽量不要写跟原有类相同的方法名---会替换掉原来方法的功能---会优先调用类目的方法

相关文章

  • UI(十)类目延展协议

    协议类目延展 #pragma mark---协议---- *协议:正式协议<协议名>是一个公共接口文件,只要遵守...

  • 类目 延展 协议

    前言 Objective-C中提供了可以让我们扩展类定义的手段:类目,延展和协议。类目:为已知的类增加新的方法;延...

  • iOS类目、延展、协议

    1.类目 类目就是为已存在的类添加新的方法。但是不能添加实例变量。比如系统的类,我们看不到他的.m文件,所以没有办...

  • 类别(category)延展(extension)

    Objective-c中提供了可以让我们扩展类定义的手段:类目,延展和协议。类目:为已知的类增加新的方法;延展:通...

  • iOS类目、延展和协议

    类目### 为已知的类添加新的方法。(已知类包括自己定义的类和系统已有的类)类目的目的 1.将类的实现分散到多个不...

  • 类目,延展,和协议,代理

    为什么使用类目是一种为现有的类添加新方法的方式有时需要对现有的类添加一些方法,之前都是通过继承相关的类,然后再子类...

  • Objective-C 「类目、延展、协议」

    类目(Category) (1).为已知的类添加新的方法,无论是否知道类的源代码,这些类包括自己定义的类和系统已有...

  • 类目(Category),延展(Extension),协议(Pr

    1. 类目(Category) 类目: 又称"分类", 为已知的类(系统或自己创建的类)添加新的方法 1.1 类目...

  • Objective-c:类目、延展、协议

    概述 OC用于拓展已存在类的内置功能是它最强大的功能之一。类目、延展、协议提供了可以让你扩展类功能的方式。使用他们...

  • 类目、延展

    目录:1、类目2、延展 1、类目(类别)Category 1.从定义看类目就是给类来添加一个眼睛?,哈哈,其实就是...

网友评论

    本文标题:UI(十)类目延展协议

    本文链接:https://www.haomeiwen.com/subject/vgafvftx.html