iOS KVO的简单介绍

    /**
     *  添加KVO(也叫观察者模式)
        addObserver:观察者 谁想监听mainView
        forKeyPath:监听mainView的什么属性
        options:mainView的属性发生怎样的改变
        注意:只要监听的属性一改变就会调用,observeValueForKeyPath方法,通知有新得值
        在self.mainView销毁的时候,需要移除观察者
     */
    [self.mainView addObserver:self forKeyPath:@"frame" options:NSKeyValueObservingOptionNew context:nil];
}
/**
 * 当监听到object的keyPath属性发生了改变
 * object:改变的对象
 * keyPath:监听的属性
 * change:属性的一些详情
 */
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context
{
    NSLog(@"%@",NSStringFromCGRect(self.mainView.frame));
    if (self.mainView.frame.origin.x > 0) {
        self.rightView.hidden = NO;
    }else if(self.mainView.frame.origin.x < 0 ){
        self.rightView.hidden = YES;
    }
}
//对象销毁时调用,移除观察者
-(void)dealloc
{
    [self.mainView removeObserver:self forKeyPath:@"frame"];
}

拖拽手势和kvo

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

相关阅读更多精彩内容

  • 以后,我要开一间书吧。 就在这个城市 24小时营业 成排的落地窗 书架上摆满我喜欢的书 不啦,还是摆满你喜欢的书吧...
    慕宁1999阅读 163评论 0赞 0
  • 民国渣男榜上,“老司机”胡兰成毫无疑问“忝列其中”,但我觉得,萧军比之胡兰成,有过之而无不及。 胡兰成是优雅婉约含...
    水清的minguo往事阅读 6,602评论 0赞 9
  • by:孤鸟差鱼 今非昔比的状况 却总被梦塞满甜蜜的糖 你多不欣赏
    孤鸟差鱼阅读 157评论 0赞 2
  • 当苏毅穿过学校来到神墓山脚下的小亭子时,他突然发现不知何时,顺着亭子的侧旁出现了一条小径,芳花野草散乱的向两边倾斜...
    小苏书九州阅读 322评论 0赞 0
  • 文|京芮儿 第二章 密恋 不知为什么,海艳总想着冰场发生的事。虽说薛峰是从胡同里长大的,可看上去一点儿也不坏,而且...
    京芮儿阅读 1,359评论 17赞 21

友情链接更多精彩内容