美文网首页Kevin的IOS开发专题
【IOS开发基础系列】KVO/KVC专题

【IOS开发基础系列】KVO/KVC专题

作者: Kevin_Junbaozi | 来源:发表于2018-03-07 23:48 被阅读27次

1 开发技巧

1.1 常见问题

1.1.1 kvo通知没有发出来问题

KVO通知发起机制:

       KVO中属性变化后,通知的发出是在属性的setter方法中发起的,所以属性赋值时,一定要用.操作符或者用方法调用,而不能直接用内部成员赋值的方法。

WS(weakSelf);

[HJComInstance getEntity:_entity WithUserEntity:userEntity WithCompleteBlock:^(HJResultData*reData){

    HJPreEntity*preEntity;

            if (reData.errCode == HJCode_Success) {

                preEntity = reData.resultData;

            }

            if(preEntity) {

                weakSelf.preType = HJPreType_Done;

                //不会发出kvo通知

                _preType = HJPreType_Done;

            }

}];

通知接收逻辑:

//添加对praiseType属性的监听

[self.mEntity addObserver:self forKeyPath:@"preType" options:NSKeyValueObservingOptionNew context:nil];

#pragma mark 重写observeValueForKeyPath方法,当属性变化后此处获得通知

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void*)context{

    if([keyPath isEqualToString:@"preType"]){、

        if (object == _mEntity) {

            [self loadSubViews];

        }

    }

}

- (void)dealloc

{

    [self.mEntity removeObserver: self forKeyPath:@"preType"];

}

2 参考链接

iOS开发系列--Objective-C之KVC、KVO

http://www.cnblogs.com/kenshincui/p/3871178.html

KVOController

https://github.com/facebook/KVOController

iOS:KVO的概述与使用

http://blog.csdn.net/yuquan0821/article/details/6646400

[深入浅出Cocoa]详解键值观察(KVO)及其实现机理

http://blog.csdn.net/kesalin/article/details/8194240

Key-value observing:官方文档

Key-Value

Observing Done Right:官方 KVO 实现的缺陷

MAKVONotificationCenter:一个改良的Notification 实现,托管在 GitHub 上

Friday Q&A 2009-01-23

深入浅出Cocoa 之动态创建类

深入浅出Cocoa之类与对象

相关文章

  • KVC

    iOS 如何使用KVC iOS开发UI篇—Kvc简单介绍 iOS开发系列--Objective-C之KVC、KVO

  • KVC 和 KVO

    iOS-KVC和KVO精炼讲解(干货)KVC 和 KVOiOS开发系列--Objective-C之KVC、KVO细...

  • 【IOS开发基础系列】KVO/KVC专题

    1 开发技巧 1.1 常见问题 1.1.1 kvo通知没有发出来问题 KVO通知发起机制: KVO中属性变化后,...

  • iOS日记15-KVC

    1.iOS开发技巧系列---详解KVC 2.漫谈 KVC 与 KVO 3.KVC/KVO原理详解及编程指南 关键点...

  • KVC、KVO

    IOS开发系列--Objective-C之KVC、KVO - KenshinCui - 博客园

  • ReactiveCocoa相关

    随手记录: 1、iOS开发系列--Objective-C之KVC、KVO 2、ReactiveCocoa初探

  • KVC

    KVC原理剖析 - CocoaChina_让移动开发更简单 iOS开发底层细究:KVC和KVO底层原理 | iOS...

  • iOS知识梳理11:KVC 和KVO

    参考链接:[精辟]KVO 和 KVC 的区别和用法,干货!!!iOS开发技巧系列---详解KVCKVC的优点和缺点...

  • 知识点3

    26. 什么是KVC和KVO? KVO: iOS开发-KVO的奥秘 http://www.jianshu.com/...

  • iOS开发技巧系列---详解KVC(我告诉你KVC的一切)

    iOS开发技巧系列---详解KVC(我告诉你KVC的一切) iOS开发技巧系列---详解KVC(我告诉你KVC的一切)

网友评论

    本文标题:【IOS开发基础系列】KVO/KVC专题

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