简单使用iOS 关联引用objc_setAssociatedObject,objc_getAssociatedObject

使用关联引用


   #import <objc/runtime.h>


    NSString *interestingString = @"My Interesting Thing";
    //将数据和控件绑定
    UIAlertView *alert          = [[UIAlertView alloc] initWithTitle:@"Alert" message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
    objc_setAssociatedObject(alert, &kRepresentedObject, interestingString, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    [alert show];

在代理方法中取值

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

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,677评论 19 139
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,494评论 6 13
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,847评论 11 349
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,642评论 30 472
  • 1 大学的第一学年期末考试,我成绩“恰好”为全专业第一。 之所以说“恰好”,并非出于谦虚,当有同学用赞叹语气夸赞我...
    本公子阅读 1,628评论 4 8

友情链接更多精彩内容