美文网首页机制
IOS 分类中如何添加属性

IOS 分类中如何添加属性

作者: 超魔王级麻友sama | 来源:发表于2015-07-24 08:42 被阅读4676次

1.对于自己需要扩展的类创建一个分类

2.首先在.h文件中 相同于普通.h 加入  @property(retain,nonatomic) NSString *a;

3.再给分类添加属性的set get 方法时不能采用以前的赋值方式如下:

- (NSString*)a{

return _a;

}

-(void)setA:(NSString*)a{

_a=a;

}

需要在外面申请一个静态地址 staticcharstr='a';

然后采用运行时的方法来给属性赋值,代码参考如下

- (NSString*)a{

return objc_getAssociatedObject(self, &strAddrNormalKey);

}

-(void)setA:(NSString*)a{

objc_setAssociatedObject(self, &strAddrNormalKey, normalColor,OBJC_ASSOCIATION_COPY_NONATOMIC);

}

相关文章

  • IOS 分类中如何添加属性

    1.对于自己需要扩展的类创建一个分类 2.首先在.h文件中 相同于普通.h 加入 @property(retain...

  • iOS 分类中添加属性

    很简单,看下注释就明白了。github代码

  • ios 分类中添加属性

    category使用 objc_setAssociatedObject/objc_getAssociatedObj...

  • iOS 分类中添加属性

    注意 分类主要是给原类添加方法的,分类的结构指针中只有方法列表,没有属性列表。所以原则上分类里面最好不要声明属性 ...

  • ios中的分类

    在ios中给分类添加属性,可以通过属性关联来实现重写set方法如下: -(NSMutableDictionary ...

  • iOS开发 - protocol中定义属性?

    在iOS的面试中经常会被问到如何为分类添加属性,但是鲜少听人提过协议中添加属性的情况。我们知道协议是一组特定功能或...

  • iOS runtime 动态添加属性,方法,方法交换案例

    iOS runtime 动态添加属性,方法,方法交换案例 动态添加属性 我之前写过分类的文章,说过,分类不能添加成...

  • 类 *分类* 类扩展

    分类:Category iOS中的分类主要的作用就是为类提供扩展,增加一些方法。但是只能添加方法 不能添加属性?我...

  • iOS-浅谈OC中的关联对象

    目录 前言工作中遇到问题的思考---- 直接在分类添加成员变量---- 在分类中增加属性如何在分类中添加成员变量?...

  • ios中给分类添加属性

    ios中利用类别给已有的类扩展方法是可以的,但是如果直接的添加属性是会报错的。利用runtime可以达到添加属性的...

网友评论

  • 动感超人丶:如果 添加的属性是自定义的,会崩溃,怎么解决,比如给NSPerson添加NSDog属性,而不是NSString
  • Shawkaine:外面声明的静态地址和用的不一样
  • 石丘:没用markdown 差评

本文标题:IOS 分类中如何添加属性

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