kvc 通過key 來檢測value的值
直接貼上**
var peo = stu()
peo.name = "cao"
//kvc 通過key來訪問value
var name = peo.valueforkey("name") as! nsstring
peo.setvalue("kai", forkey: "name")
print(peo.name!)
print(name)
//kvo鍵值監聽的機制
kvo監聽機制
建立在kvc之上的的機制
主要功能是檢測物件屬性的變化
這是乙個完善的機制,不需要使用者自己設計複雜的觀察者模式
對需要觀察的屬性要在前面加上dynamic關鍵字
kvo鍵值監聽機制
各引數的說明:
註冊監聽的機制 用通知欄的方法
首先 廣播出訊息
let datadict = ["username": self.txtusername.text!]
//傳送通知
nsnotificationcenter.defaultcenter().postnotificationname("registercompletionnotification", object: nil, userinfo: datadict)
隨後對這個廣播出來的訊息有興趣的類 註冊監聽
nsnotificationcenter.defaultcenter().addobserver(self, selector: "resigin:", name: "registercompletionnotification", object: nil)
}func resigin(notification:nsnotification)
物件導向 鍵值編碼 KVC 與鍵值監聽 KVO
最基本的kvc由nskeyvaluecoding協議提供支援,最基本的操作屬性的兩個方法如下 setvalue 屬性值forkey 屬性名 為指定屬性設定值。valueforkey 屬性名 獲取指定屬性值 在kvc程式設計方式中,無論呼叫setvalue forkey 方法,還是呼叫valuefor...
KVC 鍵值編碼與KVO鍵值監聽的應用(一)
1 鍵值編碼的基本概念和用法 鍵值編碼的基本概念 kvc是keyvalue coding的簡稱,它是一種可以直接通過字串的名字 key 來訪問類屬性的機制。使用該機制不需要呼叫訪問方法和變數例項就可以訪問物件屬性。本質上講,鍵 值編碼定義了你的程式訪問方法需要實現的樣式及方法簽名。在應用程式中實現鍵...
鍵值編碼 KVC 簡單的KVC
main.m kvc一 created by goddog on 15 1 3.1.我們可以通過setter和getter方法來設定和修改物件的屬性,同時也可以通過鍵值編碼 kvc 來操作物件屬性。2.何為kvc 以字串的形式間接的操作物件的屬性。設定值用 setvalue 屬性值 forkey 屬...