iOS7應用開發四、Foundation框架

tags:    時間:2014-05-04 18:59:41
iOS7應用開發4、Foundation框架

1、動態綁定:id類型的對象,表示指向未知類型對象的指針;

指向對象的實際類型在運行時指定。在使用時,注意check該對象是否響應調用的方法(respondsToSelector)。可以將一個靜態類型的對象付給id類對象。

[NSArray firstObject]等函數返回值本質上就是id類型。

id本身就是指針類型,所以不存在id *pObject這種寫法。

當向id類型的對象發送消息時,編譯時不會出現警告,但是若其實際指向的對象沒有實際上沒有那個方法,則在運行時會崩潰。


2、關於內省(introspection):

內省是對象揭示自己作為一個運行時對象的詳細信息的一種能力。這些詳細信息包括對象在繼承樹上的位置,對象是否遵循特定的協議,以及是否可以響應特定的消息,在避免因為調用對象不存在的方法而引發的程序崩潰時可以起到重要作用。主要用到的方法有:

(1)、isKindOfClass:Class:檢查對象是否是那個類或者其繼承類實例化的對象;
(2)、isMemberOfClass:Class:檢查對象是否是那個類但不包括繼承類而實例化的對象;

(3)、respondToSelector:selector:檢查對象是否包含這個方法;

(4)、conformsToProtocol:protocol:檢查對象是否符合協議,是否實現了協議中所有的必選方法。


3、Foundation框架

*NSObject:所有類的基類,實現description、copy/mutableCopy等方法;

*NSArray/NSMutableArray:有序數組;使用for-in循環枚舉其中的元素;

*NSNumber:封裝過的數值類,可用於整型、實數型、布爾型、枚舉型等;

*NSValue:可用於封裝一些其他的非基本類型的數據,如C結構體等;

*NSData:二進位數據集合;

*NSDate:日期、時間類;

*NSSet/NSMutableSet/NSOrderedSet/NSMutableOrderedSet:集合類;

*NSDictionary/NSMutableDictionary:鍵值對集合,對其中的數據存在強引用;

*Property List:一個集合的集合;比如nsarray的成員全部是nsstring,或者nsarray的成員是nsdictionary,其鍵是nsstring,值是nsnumber;在writeToFile等函數時常用;

*NSUserDefault:Property List的一種輕量化存儲方式;用於存儲比較簡單的數據;

*NSRange:表示位置和長度的C結構體;若沒找到則返回值為NSNotFound;

其他還有UIColor、UIFont分別表示顏色和字體;

內容太多了,具體可參考官方文檔。


4、Attributed strings

NSAttributedString 類:類似於(不同於也沒有繼承關係,但是可以通過方法返回一個string)NSString,每一個字元都包含一個NSDictionary成員儲存了 該字元的屬性,如字體、字型大小、下劃線、加粗等。可用於button、label、text view等對象中。

 

原文:http://blog.csdn.net/shaqoneal/article/details/15459365

推薦閱讀文章

Bookmark the permalink ,來源:互聯網