歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Objective-C語法之KVO的使用

簡介:

上篇我們講到了KVC(見 http://www.linuxidc.com/Linux/2012-07/66456.htm ),這篇我們學習KVO,全名為:Key Value Observing,直譯為:基於鍵值的觀察者。

那它有什麼用呢?KVO主要用於視圖交互方面,比如界面的某些數據變化了,界面的顯示也跟著需要變化,那就要建立數據和界面的關聯。

ObjC中提供的KVO就是解決這種問題的。以下用顯示頁面觀察學生的課程名稱變化的例子來說明KVO的使用。

學生類命名為:Student,頁面類是:PageView.

下圖來自蘋果官網,圖中的BankObject好比PageView,PersonObject好比Student,

PageView觀察Student的變化。

1、添加Student學生類。

.h

  1. #import <Foundation/Foundation.h>   
  2. @interface Student : NSObject  
  3. {  
  4.     NSString *name;  
  5.     NSString *courseName;  
  6. }  
  7. -(void)changeCourseName:(NSString*) newCourseName;  
  8. @end  

類中有name,和課程名稱courseName,添加一個可以改變課程名稱的方法changeCourseName。一會用來做對比,看直接改變課程名稱時會不會有回調。

實現文件.m

  1. #import "Student.h"   
  2.   
  3. @implementation Student  
  4. -(void)changeCourseName:(NSString*) newCourseName  
  5. {  
  6.     courseName = newCourseName;  
  7. }  
  8. @end  

實現類把方法實現了。

Copyright © Linux教程網 All Rights Reserved