Category动态增加属性

.h

import <UIKit/UIKit.h>

@interface UISwitch (WithKey)

@property (nonatomic,strong)NSString *keyString;

@end

.m

import "UISwitch+WithKey.h"

import <objc/runtime.h>

@implementation UISwitch (WithKey)

static char keyStringKey;

-(NSString *)keyString
{
return objc_getAssociatedObject(self, &keyStringKey);
}

-(void)setKeyString:(NSString *)keyString
{
objc_setAssociatedObject(self, &keyStringKey, keyString, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}

@end

@property (nonatomic, assign) NSInteger subRow;

pragma mark - NSIndexPath (SKSTableView)

static void *SubRowObjectKey;

@implementation NSIndexPath (SKSTableView)

@dynamic subRow;

  • (NSInteger)subRow
    {
    id subRowObj = objc_getAssociatedObject(self, SubRowObjectKey);
    return [subRowObj integerValue];
    }

  • (void)setSubRow:(NSInteger)subRow
    {
    id subRowObj = [NSNumber numberWithInteger:subRow];
    objc_setAssociatedObject(self, SubRowObjectKey, subRowObj, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    }

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,883评论 0 9
  • 概述在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似...
    liudhkk阅读 12,984评论 3 38
  • 今天,妈妈带我去新华书店。在那里,因为叔叔给我讲了四层楼。第一层楼,第一层楼是认真听讲上课时要好好认真的听讲,不要...
    彦彦公主阅读 2,934评论 0 1
  • 几个月前,我久未联系的同学给我打来了电话,“喂!咱们班建了一个微信群,你加吗?“我加呀!””当时的我,真是非...
    nannanl阅读 3,579评论 0 1
  • 我们终此一生,就是要摆脱他人的期待,找到真正的自己。 ...
    4688年的白羊座阅读 2,875评论 0 0

友情链接更多精彩内容