iOS KVO概述

iOS KVO概述

面试中经常会被问到:什么是KVO?这个问题既然出现概率这么大,那么我们就来详细讲一讲到底什么是KVO。下次再有面试官问你的时候,你就可以娓娓道来,以彰显高逼格

概述

问:什么是KVO?

答:KVO是Key-Value Observing的缩写。它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。

如果你能这样回答,面试官一定不会说你错的,这就是KVO的原理。但是如果你能说出KVO的好处,那一定能赢得面试官的刮目相看。比如:

  • 使用KVO最直接的好处就是可以减少代码量。
  • KVO是观察者设计模式中的一种,有利于业务逻辑于视图控制之间的解耦。

更深刻的了解KVO,你可以动手写一个小demo思路如下:

  • 定义一个对象People,分别有name和age属性
  • 监听People的age属性
  • 定义一个UIButton,在button的点击方法里面,去改变People的age。
  • 你就可以收到age改变时发出来的通知
  • 在对象销毁的时候,移除通知。

本文出处刚刚在线:http://www.superqq.com/blog/2015/06/05/ios-kvogai-shu-yu-shi-jian/

时间: 2024-08-08 05:38:32

iOS KVO概述的相关文章

iOS KVO概述及用法

KVO 什么是 KVO -->What 键值观察( Key-Value Observing) 是一种机制.这种机制允许当一个对象的某些属性的值被修改后会通知另外的观察改变化的对象.常用语 MVC 中 Model 与 Controller 之间的通信. 如何使用 KVO 使用方法分三步: 1. 注册,需要制定被观察的对象的属性 2. 实现回调的方法 3. 移除观察 (用完了,别忘记移除) 常用方法及数据类型的说明 //添加监听对象,并指定监听的 keyPath, 以及监听那些值的变化 - (voi

Lesson1 -- IOS开发概述 && HelloWorld

第一部分:IOS开发概述 1. IOS 系统架构 iOS是基于UNIX的,就系统的稳定性而言,要比其他操作系统好很多,我们完全可以相信这个操作系统! iOS的系统架构分为四个层次: 1)可触摸层 2)媒体服务层 3)核心服务层 4)核心操作系统层 如下图: 2. iOS系统架构中各层次的功能 可触摸层(Cocoa Touch):为应用程序开发提供各种有用的框架,并且大部分均与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作. 媒体服务层(Media Services):负责提供用于

李洪强iOS之集成极光推送一iOS SDK概述

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #000000 } span.s1 { } span.s2 { font: 18.0px Menlo } 李洪强iOS之集成极光推送一iOS SDK概述 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #000000 } span.s1 { } JPus

ios的概述和了解的个人总结

ios的概述: ios  为apple手持设备系统: OS X 为apple的macbook.imac.mac min等的操作系统: 应用程序的格式:dmg    app iphone 第一代 2007  6月 iphone 3G  第二代 2008   7月 iphone 3GS  第三代 2009   6月 iphone 4     2010  6月 iphone 4S   2011  10月 iphone 5     2012  9月 iphone 5C/5S  2013 9月 iphon

iOS设计模式 - 概述

最近可自由安排的时间比较多, iOS应用方面, 没什么好点子, 就先放下, 不写了.花点时间学学设计模式. 之后将会写一系列博文, 记录设计模式学习过程. 当然, 因为我自己是搞iOS的, 所以之后设计代码部分, 将尽量与objective-c相结合. iOS设计模式 - 概述           by Colin丶 转载请注明出处:              http://blog.csdn.net/hitwhylz/article/details/40372113 一.定义 设计模式(Des

iOS:KVO/KVC 的概述与使用

KVO   APP开发技术QQ群:347072638 一,概述 KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知.简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了. 二,使用方法 系统框架已经支持KVO,所以程序员在使用的时候非常简单. 1. 注册,指定被观察者的属性, 2. 实现回调方法 3. 移除观察 三,实例: 假设一个场景,股票的价格显示在当前屏幕上,当股票价格更改的时候,实时显示更新其

iOS API 概述

原文:http://www.bubuko.com/infodetail-650437.html iOS API简介 转自:http://book.2cto.com/201307/27019.html 苹果的iOS API在不同版本间有很多变化,本书采用的是iOS 6.本节中,我们会介绍iOS 6有哪些API,如何使用这些API的帮助文档以及如何使用官方案例.2.6.1 API概述iOS的整体架构图如图2-40所示,分为4层——Cocoa Touch层.Media层.Core Services层和

iOS KVO使用方法

KVO(Key Value Observing)其实是一种观察者模式,利用它可以很容易实现视图组件和数据模型的分离,当数据模型的属性值改变之后作为监听器 的视图组件就会被激发,激发时就会回调监听器自身.在ObjC中要实现KVO则必须实现NSKeyValueObServing协议,不过幸运的是 NSObject已经实现了该协议,因此几乎所有的ObjC对象都可以使用KVO. 在ObjC中使用KVO操作常用的方法如下: 注册指定Key路径的监听器: addObserver: forKeyPath: o

"iOS push全方位解析(一)【译文】"——iOS PUSH概述

这是一篇来自raywenderlich的教程,内容翔实!结构简单.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下: 1. push的概述(本博文) 2. 生成push证书,生成Provisioning Profile 3. 一个极简的demo,并测试一下push 这里查看原文 -------------------------------------------------------------------------------------------------