Objective-C 語言是通用、進階、物件導向的程式語言,所以被廣泛應用於蘋果的OS X 和iOS 作業系統及其相關API、Cocoa 和Cocoa Touch 的程式撰寫中。希望讀者能在本書的引導下跨入Objective-C 開發大門,成為開發高手。
本書內容全面、系統,並以大量實例貫穿於全書的說明之中,相信讀者學習完本書,可以具備更高一級的專案開發的能力。
作者簡介:
張權
現為天津紅翔吉瑞網路科技有限公司CEO,矽谷訪問學者,頂尖資料庫專家,專研行動終端與大資料交互。擁有多家上市公司行動終端解決方案經驗,曾為國際多家知名互聯網企業提供行動終端技術諮詢服務。
作者序
前言
從1980 年布萊德• 考克斯(Brad Cox)在其公司Stepstone 發明Objective-C 至今,已有35 年了。在這期間,Objective-C 語言以其高效的特點在蘋果作業系統中經久不衰。Objective-C 語言是通用、進階、物件導向的程式語言,所以被廣泛應用於蘋果的OS X 和iOS 作業系統及其相關API、Cocoa 和Cocoa Touch 的程式撰寫中。
作者結合自己多年的Objective-C 開發經驗和心得體會,花費了一年多的時間撰寫本書,希望各位讀者能在本書的引導下跨入Objective-C 開發大門,並成為一名開發高手。
本書內容全面、系統,並以大量實例貫穿於全書的說明之中,相信讀者學習完本書,可以具備更高一級的專案開發的能力。
本書特色
1. 內容全面、系統。
本書介紹了Objective-C 的特點、技術組成、開發Objective-C 時的開發環境、
Cocoa 中的Foundation 框架和Application 框架中常用到的方法等內容。
2. 貫穿大量的實例,迅速提升開發水準。
本書在說明基礎知識時貫穿了大量短小精悍的典型實例,以便讓讀者更進一步地了解各種方法,體驗實際程式設計,迅速加強開發水準。
本書內容及結構
第1 篇 Objective-C 準備篇(第1 ∼ 2 章)
本篇主要內容包含:Objective-C 的發展歷史、特點、技術組成、Objective-C 開發環境的建構、第一個Objective-C 程式的撰寫、數學運算中常用到的函數等。透過本篇的學習,讀者可以熟悉Objective-C 的開發環境、熟練數學運算中的函數使用方法。
第2 篇 Cocoa 的Foundation 框架篇(第3 ∼ 11 章)
本篇主要內容包含:數字物件、字串物件、陣列物件、字典物件、集合、檔案、時間和日曆、處理程序、執行緒、鎖、資料物件和歸檔中常用的方法。
第3 篇 Cocoa 的Application 框架篇(第12 ∼ 17 章)
本篇主要內容包含:視窗和顏色、自訂視圖、文字標籤和文字視圖、影像和影像視圖、表格視圖以及常用控制項中常用方法。
本書適合讀者群
◎ 想全面學習Objective-C 開發技術的人員
◎ Objective-C 專業開發人員
◎Objective-C 開發同好
◎ 大專院校的學生
◎ 資訊中心培訓班學員
◎ 需要一本手冊的程式設計師
約定
在執行結果中,"]" 之前的是執行時間和執行狀態,之後的是執行的輸出結果;讀者重點看"]" 之後的內容。
由於部分函數/ 方法功能類似,僅參數和傳回值的類型不同,對於這種方法,本書將其歸納到一個小節中,只對第一個方法說明。讀者只需要做簡單對照,就可以熟練所有類似的函數。
前言
從1980 年布萊德• 考克斯(Brad Cox)在其公司Stepstone 發明Objective-C 至今,已有35 年了。在這期間,Objective-C 語言以其高效的特點在蘋果作業系統中經久不衰。Objective-C 語言是通用、進階、物件導向的程式語言,所以被廣泛應用於蘋果的OS X 和iOS 作業系統及其相關API、Cocoa 和Cocoa Touch 的程式撰寫中。
作者結合自己多年的Objective-C 開發經驗和心得體會,花費了一年多的時間撰寫本書,希望各位讀者能在本書的引導下跨入Objective-C 開發大門,並成為一名開發高手。
本書內容全面、系統,並以大量實例貫穿於全書的說...
目錄
Chapter 01 Objective-C 學習環境準備
1.1 Objective-C 基礎
1.1.1 Objective-C 的發展歷史
1.1.2 Objective-C 語言的特點
1.1.3 技術架構
1.2 開發環境
1.2.1 註冊開發者帳號
1.2.2 下載安裝Xcode
1.2.3 更新說明文件
1.3 撰寫第一個Objective-C 程式
1.3.1 建立專案
1.3.2 撰寫程式
1.3.3 執行程式
1.3.4 使用幫助
1.4 小結
Chapter 02 數學運算(math)函數
2.1 算數運算函數
2.1.1 rand() 函數:產生亂數
2.1.2 abs() 函數/labs() 函數:整數的絕對值
2.1.3 fabs()/fabsf()/fabsl() 函數:浮點數的絕對值
2.1.4 floor()/floorf()/floorl() 函數:向下取整數
2.1.5 ceil()/ceilf()/ceill() 函數:向上取整數
2.1.6 round()/roundf()/roundl() 函數:四捨五入
2.1.7 sqrt()/sqrtf()/sqrtl() 函數:求平方根
2.1.8 fmax()/fmaxf()/fmaxl() 函數:求最大值
2.1.9 fmin()/fminf()/fminl() 函數:求最小值
2.1.10 hypot()/hypotf()/hypotl() 函數:求直角三角形斜邊的長度
2.1.11 fmod()/fmodf()/fmodl() 函數:求兩數整除後的餘數
2.1.12 modf()/modff()/modfl() 函數:浮點數分解為整數和小數
2.1.13 frexp()/frexpf()/frexpl() 函數:浮點數分解尾數和以二為底的指數
2.2 三角運算函數
2.2.1 sin()/sinf()/sinl()/ 函數:求正弦值
2.2.2 sinh()/sinhf()/sinhl() 函數:求雙曲正弦值
2.2.3 cos()/cosf()/cosl() 函數:求餘弦值
2.2.4 cosh()/coshf()/coshl() 函數:求雙曲餘弦值
2.2.5 tan()/tanf()/tanl() 函數:求正切值
2.2.6 tanh()/tanhf()/tanhl() 函數:求雙曲正切值
2.3 反三角運算
2.3.1 asin()/asinf()/asinl() 函數:求反正弦值
2.3.2 asinh()/asinhf()/asinhl() 函數:求反雙曲正弦值
2.3.3 acos()/acosf()/acosl() 函數:求反餘弦值
2.3.4 acosh()/acoshf()/acoshl() 函數:求反雙曲餘弦值
2.3.5 atan()/atanf()/atanl() 函數:求反正切值
2.3.6 atan2()/atan2f()/atanl() 函數:求座標值的反正切值
2.3.7 atanh()/atanhf()/atanhl() 函數:求反雙曲正切值
2.4 指數和對數運算
2.4.1 pow()/powf()/powl 函數:求n 的m 次方的值
2.4.2 exp()/expf()/expl() 函數:求e 的x 次方的值
2.4.3 exp2()/exp2f()/exp2l() 函數:2 的x 的次方的值
2.4.4 log()/logf()/logl() 函數:求以e 為底的對數值
2.4.5 log10()/log10f()/log10l() 函數:求以10 為底的對數值
2.5 常數函數
2.6 小結
Chapter 03 數字物件(NSNumber)
3.1 整數物件
3.1.1 numberWithShort: 方法:建立短整數物件
3.1.2 numberWithUnsignedShort: 方法:建立無號短整數物件
3.1.3 numberWithInteger: 方法:建立整數物件
3.1.4 numberWithUnsignedInteger: 方法:建立無號整數物件
3.1.5 numberWithInt: 方法:建立整數物件
3.1.6 numberWithUnsignedInt: 方法:建立無號整數物件
3.1.7 numberWithLong: 方法:建立並初始化長整數物件
3.1.8 numberWithUnsignedLong: 方法:建立並初始化無號長整數物件
3.1.9 numberWithLongLong: 方法:建立並初始化長整數物件
3.1.10 numberWithUnsignedLongLong: 方法:建立並初始化無號長整數物件
3.1.11 initWithShort: 方法:初始化短整數物件
3.1.12 initWithUnsignedShort: 方法:初始化無號短整數物件
3.1.13 initWithInteger: 方法:初始化整數物件
3.1.14 initWithUnsignedInteger: 方法:初始化無號整數物件
3.1.15 initWithInt: 方法:初始化整數物件
3.1.16 initWithUnsignedInt: 方法:初始化無號整數物件
3.1.17 initWithLong: 方法:初始化長整數物件
3.1.18 initWithUnsignedLong: 方法:初始化無號長整數物件
3.1.19 initWithLongLong: 方法:初始化長整數物件
3.1.20 initWithUnsignedLongLong: 方法:初始化無號長整數物件
3.1.21 shortValue: 方法:取短整數物件的值
3.1.22 unsignedShortValue: 方法:取無號短整數物件的值
3.1.23 integerValue: 方法:取整數物件的值
3.1.24 unsignedIntegerValue: 方法:取無號整數物件的值
3.1.25 intValue: 方法:取整數物件的值
3.1.26 unsignedIntValue: 方法:取無號整數物件的值
3.1.27 longValue: 方法:取長整數物件的值
3.1.28 unsignedLongValue: 方法:取無號長整數物件的值
3.1.29 longlongValue: 方法:取長整數物件的值
3.1.30 unsignedLongLongValue: 方法:取無號長整數物件的值
3.2 字元型態物件
3.2.1 numberWithChar: 方法:建立並初始化字元型態數字物件
3.2.2 numberWithUnsignedChar: 方法:建立並初始化無號字元型態數字物件
3.2.3 initWithChar: 方法:初始化字元型態物件
3.2.4 initWithUnsignedChar: 方法:初始化無號字元型態物件
3.2.5 charValue: 方法:取字元型態數字物件的值
3.2.6 unsignedCharValue: 方法:取無號字元型態數字物件的值
3.3 單精度型態物件
3.3.1 numberWithFloat: 方法:建立並初始化單精度型態數字物件
3.3.2 initWithFloat: 方法:初始化單精度型態數字物件
3.3.3 floatValue: 方法:取單精度型態數字物件的值
3.4 雙精度型物件
3.4.1 numberWithDouble: 方法:建立並初始化一個雙精度數字物件
3.4.2 initWithDouble: 方法:初始化雙精度數字物件
3.4.3 doubleValue: 方法:取雙精度數字物件的值
3.5 布林型物件
3.5.1 numberWithBool: 方法:建立並初始化布林型數字物件
3.5.2 initWithBool: 方法:初始化布林類型物件
3.5.3 boolValue: 方法:取布林型數字物件的值
3.6 數字物件通用方法
3.6.1 isEqualToNumber: 方法:比較兩物件值是否相等
3.6.2 compare: 方法:比較值的大小
3.7 小結
Chapter 04 字串物件(NSString)
4.1 建立及初始化
4.1.1 string: 方法:建立字串
4.1.2 stringWithstring: 方法:用字串來建立字串
4.1.3 stringWithCstring: 方法:建立C 字串
4.1.4 stringWithFormat: 方法:建立NSLog() 格式的字串
4.1.5 stringWithContentsOfFile: 方法:將建立的字串設定為指定檔案的內容
4.1.6 stringWithContentsOfURL: 方法:將建立字串設定為url 的內容
4.1.7 stringWithUTF8String: 方法:將建立的字串轉為UTF8 字串
4.1.8 init: 方法:初始化字串
4.1.9 initWithString: 方法:用字串來初始化字串
4.1.10 initWithCString: 方法:初始化字串
4.1.11 initWithFormat: 方法:用NSLog() 格式初始化字串
4.1.12 initWithContentsOfFile: 方法:將初始化的字串設定為指定檔案的內容
4.1.13 initWithContentsOfURL: 方法:將初始化的字串設定為url 的內容
4.1.14 initWithUTF8String: 方法:將初始化的字串轉為UTF8 字串
4.2 判斷和比較
4.2.1 isEqualTostring: 方法:比較字串是否相等
4.2.2 hasPrefix: 方法:判斷字串是否以某個字元開始
4.2.3 hasSuffix: 方法:判斷字串是否以某個字元結束
4.2.4 compare: 方法:比較字串的大小
4.2.5 caseInsensitiveCompare: 方法:不考慮大小寫的比較大小
4.3 大小寫轉換
4.3.1 uppercaseString: 方法:小寫字母轉為大寫字母
4.3.2 lowercaseString: 方法:大寫字母轉為小寫字母
4.3.3 capitalizedString: 方法:將每個單字的字首大寫
4.4 截取
4.4.1 substringToIndex: 方法:從字串的開頭一直截取到指定的位置
4.4.2 substringFromIndex: 方法:從指定位置開始截取字串直到結束
4.4.3 substringWithRange: 方法:根據指定範圍傳回子字串
4.4.4 characterAtIndex: 方法:傳回索引號所在字串中的字元
4.5 轉換類型
4.5.1 doubleValue:/floatValue: 方法:傳回轉為浮點數態的值
4.5.2 intValue: 方法:傳回轉為整數的值
4.5.3 boolValue: 方法:傳回轉為布林類型的值
4.6 對檔案的處理
4.6.1 stringByAppendingPathExtension: 方法:為檔案增加副檔名
4.6.2 pathExtension: 方法:取得副檔名
4.6.3 stringByDeletingPathExtension: 方法:刪除副檔名
4.6.4 writeToFile: 方法:將字串寫入到檔案
4.6.5 writeToURL: 方法:將字串寫入到url 中
4.6.6 stringByExpandingTildeInPath: 方法:將" ∼ " 取代成系統的家目錄4.6.7 stringByAbbreviatingWithTildeInPath: 方法:將系統家目錄取代為" ∼ "
4.6.8 lastPathComponent: 方法:取得路徑中的檔案名稱
4.6.9 stringByDeletingLastPathComponent: 方法:取得路徑中檔案所在的位置
4.6.10 stringByAppendingPathComponent: 方法:組合位置和檔案名稱
4.6.11 isAbsolutePath: 方法:判斷絕對路徑
4.7 其他
4.7.1 length: 方法:求字串的長度
4.7.2 stringByAppendingString: 方法:字串後面增加一個新字串
4.7.3 rangeOfString: 方法:尋找字串中是否包含其他字串
4.7.4 stringByTrimmingCharactersInSet: 方法:去除空格或確認
4.8 可變字串
4.8.1 stringWithCapacity: 方法:按照固定長度產生空字串
4.8.2 initWithCapacity: 方法:初始化一個固定長度的字串
4.8.3 appendString: 方法:在字串的尾端附加另一個字串
4.8.4 appendFormat: 方法:附加一個格式化字串
4.8.5 SetString: 方法:將字串設定為規定的內容
4.8.6 insertString: 方法:在指定位置插入字串
4.8.7 deleteCharactersInRange: 方法:刪除指定範圍的字串
4.8.8 replaceCharactersInRange: 方法:使用字串代替指定範圍的字串
4.8.9 replaceOccurrencesOfString: 方法:取代
4.9 小結
Chapter 05 陣列物件(NSArray)
5.1 建立及初始化
5.1.1 array: 方法:建立陣列
5.1.2 arrayWithArray: 方法:透過一個陣列建立另一個陣列
5.1.3 arrayWithContentsOfFile: 方法:建立陣列將內容設定為指定檔案內容
5.1.4 arrayWithContentsOfURL: 方法:建立陣列將內容設定為url 指定內容
5.1.5 arrayWithObject: 方法:建立具有一個元素的陣列
5.1.6 arrayWithObjects: 方法:建立具有多個元素的陣列
5.1.7 init: 方法:初始化陣列
5.1.8 initWithArray: 方法:用陣列初始化陣列
5.1.9 initWithContentsOfFile: 方法:初始化陣列將內容設定為指定檔案內容
5.1.10 initWithContentsOfURL: 方法:初始化陣列將內容設定為url 指定內容
5.1.11 initWithObjects: 方法:初始化具有多個元素的陣列
5.2 陣列元素的操作
5.2.1 containsObject: 方法:判斷陣列中是否包含某個元素
5.2.2 count: 方法:計算元素個數
5.2.3 firstObjectCommonWithArray: 方法:取得第一個元素
5.2.4 lastObject: 方法:取得最後一個元素
5.2.5 objectAtIndex: 方法:取得在某個位置的陣列元素
5.2.6 objectAtIndexs: 方法:取得陣列元素
5.2.7 arrayByAddingObject: 方法:在陣列尾端增加元素
5.2.8 arrayByAddingObjectsFromArray: 方法:在陣列的尾端增加另一個陣列
5.2.9 subarrayWithRange: 方法:陣列的一部分建立陣列
5.2.10 isEqualToArray: 方法:比較陣列是否相等
5.2.11 indexOfObject: 方法:傳回元素所在的位置
5.2.12 indexOfObjectIdenticalTo: 方法:傳回元素所在的位置
5.2.13 componentsJoinedByString: 方法:陣列轉為字串
5.2.14 componentsSeparatedByString: 方法:字串轉為陣列7
5.2.15 sortedArrayHint: 方法:陣列轉為資料物件
5.2.16 writeToFile: 方法:將陣列中的內容寫入到檔案
5.2.17 writeToUrl: 方法:將陣列中的內容寫入到url
5.2.18 objectEnumerator: 方法:陣列元素從前向後存取
5.2.19 reverseObjectEnumerator: 方法:陣列元素從後向前存取
5.2.20 pathsMatchingExtensions: 方法:檢視某資料夾下的東西
5.2.21 sortedArrayUsingFunction: 方法:實現陣列元素的簡單排序
5.3 可變陣列
5.3.1 arrayWithCapacity: 方法:建立一個具有固定長度的可變陣列
5.3.2 initWithCapacity: 方法:初始化一個具有固定長度的可變陣列
5.3.3 addObject: 方法:增加陣列元素
5.3.4 addObjectsFromArray: 方法:用陣列建立可變陣列
5.3.5 removeObject: 方法:刪除指定的元素
5.3.6 removeAllObjects: 方法:刪除可變陣列中的所有元素
5.3.7 removeLastObject: 方法:刪除可變陣列中的最後一個元素
5.3.8 removeObjectAtIndex: 方法:刪除指定位置的元素
5.3.9 removeObjectsAtIndex: 方法:刪除可變陣列中的元素
5.3.10 removeObjectsInRange: 方法:刪除某個範圍內的可變陣列中的元素
5.3.11 removeObjectsInArray: 方法:刪除與另一個陣列相同的元素
5.3.12 replaceObjectAtIndex: 方法:取代可變陣列中某一位置的元素
5.3.13 replaceObjectsAtIndexes: 方法:取代可變陣列中的多個元素
5.3.14 replaceObjectsInRange: 方法:取代某一範圍的陣列元素
5.3.15 insertObject: 方法:在某一位置插入陣列元素
5.3.16 insertObjects: 方法:在某一位置或範圍插入另一陣列元素
5.3.17 exchangeObjectAtIndex: 方法:交換兩個元素
5.3.18 setArray: 方法:設定可變陣列中內容
5.4 小結
Chapter 06 字典物件(NSDictionary)
6.1 建立及初始化
6.1.1 dictionary: 方法:建立字典
6.1.2 dictionaryWithContentsOfFile: 方法:將建立的字典內容設定為指定檔案內容
6.1.3 dictionaryWithContentsOfURL: 方法:將建立的字典內容設定為指定url 內容
6.1.4 dictionaryWithDictionary: 方法:用字典建立字典
6.1.5 dictionaryWithObject: 方法:建立具有一個鍵- 值的字典
6.1.6 dictionaryWithObjects: 方法:建立具有多個鍵- 值的字典
6.1.7 dictionaryWithObjectsAndKeys: 方法:建立具有多個鍵- 值的字典
6.1.8 init: 方法:初始化字典
6.1.9 initWithContentsOfFile: 方法:將初始化的字典內容設定為指定檔案內容
6.1.10 initWithContentsOfURL: 方法:將初始化的字典內容設定為指定url 內容
6.1.11 initWithDictionary: 方法:用字典初始化字典
6.1.12 initWithObjects: 方法:初始化具有多個鍵- 值的字典
6.1.13 initWithObjectsAndKeys: 方法:初始化具有多個鍵- 值的字典
6.2 便捷鍵- 值
6.2.1 objectForKey: 方法:返回鍵的值
6.2.2 allKeys: 方法:傳回所有的鍵
6.2.3 allValue: 方法:傳回所有的值
6.2.4 allKeysForObject: 方法:傳回值所對應的鍵
6.2.5 keyEnumerator: 方法:將字典中所有的鍵放到NSEnumerator 物件中
6.2.6 objectEnumerator: 方法:將字典中所有的值放到一個NSEnumerator物件中
6.3 檔案的處理
6.3.1 fileCreationDate: 方法:檔案建立日期
6.3.2 fileModificationDate: 方法:檔案修改的日期
6.3.3 fileSize: 方法:檔案的大小
6.3.4 fileExtensionHidden: 方法:副檔名是否隱藏
6.3.5 fileType: 方法:檔案的類型
6.3.6 fileGroupOwnerAccountID: 方法:檔案所群組標識
6.3.7 fileGroupOwnerAccountName: 方法:檔案所群組名
6.3.8 fileHFSCreatorCode: 方法:檔案分層系統建立者編碼
6.3.9 fileHFSTypeCode: 方法:檔案分層系統類型編碼
6.3.10 fileIsAppendOnly: 方法:檔案是否唯讀
6.3.11 fileIsImmutable: 方法:檔案是否可變
6.3.12 fileOwnerAccountID: 方法:檔案所屬人標識
6.3.13 fileOwnerAccountName: 方法:檔案所屬人
6.3.14 filePosixPermissions: 方法:許可權
6.3.15 fileSystemFileNumber: 方法:檔案系統的檔案編號
6.3.16 fileSystemNumber: 方法:檔案系統編號
6.3.17 writeToFile: 方法:字典內容寫入檔案中
6.3.18 writeToURL: 方法:字典內容寫入url 中
6.4 其他
6.4.1 count: 方法:字典鍵- 值個數
6.4.2 isEqualToDictionary: 方法:判斷字典是否相等
6.5 可變字典
6.5.1 dictionaryWithCapacity: 方法:建立固定長度的可變字典
6.5.2 initWithCapacity: 方法:初始化固定長度的可變字典
6.5.3 setObject: 方法:設定鍵- 值
6.5.4 setDictionary: 方法:用字典設定可變字典中的內容
6.5.5 removeAllObjects: 方法:刪除所有的內容
6.5.6 removeObjectForKey: 方法:刪除鍵所對應的值
6.5.7 removeObjectsForKeys: 方法:刪除多個鍵所有的值
6.5.8 addEntriesFromDictionary: 方法:將字典中的鍵- 值增加到可變字典中
6.6 小結
Chapter 07 集合(NSSet)
7.1 建立以初始化
7.1.1 set: 方法:建立集合
7.1.2 setWithArray: 方法:用陣列建立集合
7.1.3 setWithObject: 方法:建立具有一個元素的集合
7.1.4 setWithObjects: 方法:建立具有多個元素的集合
7.1.5 setWithSet: 方法:集合建立集合
7.1.6 init: 方法:初始化集合
7.1.7 initWithArray: 方法:用陣列初始化集合
7.1.8 initWithObjects: 方法:初始化具有多個元素的集合
7.1.9 initWithSet: 方法:集合初始化集合
7.2 存取元素
7.2.1 objectEnumerator: 方法:將所有集合中的元素放到NSEnumerator 物件中
7.2.2 allObjects: 方法:傳回集合中所有的元素
7.2.3 anyObject: 方法:傳回任意一個元素
7.2.4 count: 方法:傳回元素個數
7.3 判斷比較
7.3.1 containsObject: 方法:判斷集合中是否包含某個元素
7.3.2 member: 方法:判斷集合中是否包含某個元素並傳回
7.3.3 isSubsetOfSet: 方法:判斷一個集合是否是一個集合的子集
7.3.4 intersectsSet: 方法:判斷交集
7.3.5 isEqualToSet: 方法:判斷集合是否相等
7.4 可變集合
7.4.1 setWithCapacity: 方法:建立具有固定長度的可變集合
7.4.2 initWithCapacity: 方法:初始化具有固定長度的可變集合
7.4.3 setSet: 方法:透過集合設定可變集合的內容
7.4.4 addObject: 方法:增加元素
7.4.5 addObjectsFromArray: 方法:增加陣列中的元素
7.4.6 removeAllObjects: 方法:刪除所有元素
7.4.7 removeObject: 方法:刪除指定的元素
7.4.8 unionSet: 方法:增加集合元素
7.4.9 minusSet: 方法:去除另一個集合中的元素
7.4.10 intersectSet: 方法:做交集
7.5 小結
Chapter 08 檔案(NSFileManager、NSFileHandle)
8.1 defaultManger: 方法:建立檔案管理員
8.2 檔案與目錄的操作
8.2.1 createFileAtPath: 方法:建立檔案
8.2.2 copyItemAtPath: 方法:複製檔案
8.2.3 moveItemAtPath: 方法:移動檔案
8.2.4 removeItemFileAtPath: 方法:刪除檔案
8.2.5 attributesOfItemAtPath: 方法:取得檔案的屬性
8.2.6 setAttributes: 方法:更改屬性
8.2.7 currentDirectoryPath: 方法:取得目前的目錄
8.2.8 changeCurrentDirectoryPath: 方法:更改目錄
8.2.9 createDirectoryAtPath: 方法:建立目錄
8.3 取得檔案和目錄資訊
8.3.1 contentsAtPath: 方法:取得檔案中的資訊
8.3.2 enumeratorAtPath: 方法:列舉目錄
8.3.3 contentsOfDirectoryAtPath: 方法:列舉目錄
8.4 判斷檔案
8.4.1 fileExistsAtPath: 方法:判斷檔案是否存在
8.4.2 isReadableFile: 方法:判斷是否能進行讀取操作
8.4.3 isWritableFileAtPath: 方法:判斷是否能進行寫入操作
8.4.4 isDeletableFileAtPath: 方法:判斷是否可刪除
8.4.5 isExecutableFileAtPath: 方法:判斷是否可以執行
8.4.6 contentsEqualAtPath: 方法:判斷是否相等
8.5 檔案讀取
8.5.1 init: 方法:初始設定檔案讀寫物件
8.5.2 fileHandleForReadingAtPath: 方法:讀取時開啟檔案
8.5.3 fileHandleForWritingAtPath: 方法:寫入時開啟檔案
8.5.4 fileHandleForUpdatingAtPath: 方法:更新時開啟檔案
8.5.5 writeData: 方法:資料寫入檔案
8.5.6 readDataToEndOfFile: 方法:讀取資料
8.5.7 readDataOfLength: 方法:讀取固定大小的內容
8.5.8 offsetInFile: 方法:取得目前偏移量
8.5.9 seekToFileOffset: 方法:設定目前的偏移量
8.5.10 seekToEndOfFile: 方法:將偏移量定位到檔案結尾
8.5.11 truncateFileAtOffset: 方法:設定位元組
8.5.12 availableData: 方法:傳回可用資料
8.5.13 closeFile: 方法:關閉檔案
8.6 目錄工具函數
8.6.1 NSUserName() 函數:傳回登入名稱
8.6.2 NSFullUserName() 函數:傳回完整使用者名稱
8.6.3 NSHomeDirectory() 函數:傳回路徑
8.6.4 NSHomeDirectoryForUser() 函數:傳回使用者的家目錄
8.6.5 NSTemporaryDirectory() 函數:傳回暫存檔案的路徑目錄
8.7 小結
Chapter 09 時間和日曆(NSDate、NSDateFormatter、
NSCalendarDate、NSCalendar、
NSTimeZone、NSTimer)
9.1 時間的建立及初始化
9.1.1 date: 方法:建立時間
9.1.2 dateWithString: 方法:用字串建立時間
9.1.3 dateWithNaturalLanguageString: 方法:用字串建立時間
9.1.4 dateWithTimeInterval: 方法:用時間間隔建立時間
9.1.5 dateWithTimeIntervalSince1970: 方法:用時間間隔建立時間
9.1.6 dateWithTimeIntervalSinceNow: 方法:用時間間隔建立時間
9.1.7 dateWithTimeIntervalSinceReferenceDate: 方法:用時間間隔建立時間
9.1.8 init: 方法:初始化時間
9.1.9 initWithString: 方法:用字串初始化時間
9.1.10 initWithTimeInterval: 方法:用時間間隔初始化時間
9.1.11 initWithTimeIntervalSince1970: 方法:用時間間隔初始化時間
9.1.12 initWithTimeIntervalSinceNow: 方法:用時間間隔初始化時間
9.1.13 initWithTimeIntervalSinceReferenceDate: 方法:用時間間隔初始化時間
9.2 時間的比較
9.2.1 isEqualToDate: 方法:比較是否相等
9.2.2 compare: 方法:比較時間
9.2.3 earlierDate: 方法:比較哪個時間早
9.2.4 laterDate: 方法:比較哪個時間晚
9.3 取得時間
9.3.1 dateByAddingTimeInterval: 方法:取得經過時間間隔後的時間
9.3.2 distantPast: 方法:取得過去的時間
9.3.3 distantFuture: 方法:取得將來的時間
9.3.4 timeIntervalSinceDate: 方法:取得兩時間的差值
9.3.5 timeIntervalSinceNow: 方法:取得兩時間的差值
9.3.6 timeIntervalSince1970: 方法:取得兩時間的差值
9.3.7 timeIntervalSinceReferenceDate: 方法:取得兩時間的差值 .
9.4 時間和字串的相互轉換
9.4.1 init: 方法:初始化用於時間轉換的物件
9.4.2 setDateFormat: 方法:設定格式
9.4.3 initWithDateFormat: 方法:初始化用於時間轉換的物件
9.5 日曆時間的建立及初始化
9.5.1 calendarDate: 方法:建立日曆時間
9.5.2 dateWithYear: 方法:建立日曆時間並設定內容
9.5.3 dateWithString: 方法:建立日曆時間並設定內容及格式
9.5.4 init: 方法:初始化日曆時間
9.5.5 initWithYear: 方法:初始化日曆時間並設定內容
9.5.6 initWithString: 方法:初始化日曆時間並設定內容及格式
9.6 取得日曆時間資訊
9.6.1 dayOfWeek: 方法:取得天數
9.6.2 dayOfMonth: 方法:取得天數
9.6.3 dayOfYear: 方法:取得天數
9.6.4 hourOfDay: 方法:取得時間
9.6.5 minuteOfHour: 方法:取得時間
9.6.6 secondOfMinute: 方法:取得時間
9.6.7 monthOfYear: 方法:取得時間
9.6.8 yearOfCommonEra: 方法:取得年
9.6.9 dayOfCommonEra: 方法:取得天數
9.6.10 calendarFormat: 方法:取得日曆的格式
9.6.11 timeZone: 方法:取得時區
9.6.12 dateByAddingYears: 方法:取得日期時間
9.7 設定日曆時間
9.7.1 setCalendarFormat: 方法:設定日曆的格式
9.7.2 setTimeZone: 方法:設定時區
9.8 日曆的使用
9.8.1 currentCalendar: 方法:建立日曆
9.8.2 autoupdatingCurrentCalendar: 方法:取得日曆
9.8.3 initWithCalendarIdentifier: 方法:初始化日曆
9.8.4 local: 方法:取得區域
9.8.5 firstWeekday: 方法:取得每週的第一天
9.8.6 minimumDaysInFirstWeek: 方法:取得天數
9.8.7 calendarIdentifier: 方法:取得日曆
9.8.8 setFirstWeekday: 方法:設定每週的第一天
9.8.9 setMinimumDaysInFirstWeek: 方法:設定天數
9.9 時區的使用
9.9.1 timeZoneWithName: 方法:用已知時區建立時區
9.9.2 timeZoneWithAbbreviation: 方法:用已知時區建立時區
9.9.3 timeZoneForSecondsFromGMT: 方法:用偏移建立時區
9.9.4 initWithName: 方法:用已知時區初始化時區
9.9.5 systemTimeZone: 方法:取得系統的時區
9.9.6 localTimeZone: 方法:取得本機時區
9.9.7 knownTimeZoneNames: 方法:傳回所有時區
9.9.8 name: 方法:取得名稱
9.9.9 abbreviation: 方法:取得縮寫
9.9.10 secondsFromGMT: 方法:取得秒數
9.10 計時器的使用
9.10.1 timerWithTimeInterval: 方法:建立計時器
9.10.2 initWithFireDate: 方法:初始化計時器
9.10.3 setFireDate: 方法:設定時間
9.10.4 fireDate: 方法:傳回時間
9.10.5 invalidate: 方法:使計時器無效
9.10.6 isValid: 方法:判斷是否有效
9.11 小結
Chapter 10 處理程序、執行緒、鎖(NSProcessInfo、NSThread、NSLock)
10.1 使用處理程序
10.1.1 processInfo: 方法:建立處理程序
10.1.2 init: 方法:初始化處理程序
10.1.3 processName: 方法:取得處理程序的名稱
10.1.4 environment: 方法:取得變數/ 值
10.1.5 globallyUniqueString: 方法:產生字串
10.1.6 operatingSystem: 方法:取得作業系統資訊
10.1.7 operatingSystemName: 方法:取得作業系統的名稱
10.1.8 operatingSystemVersionString: 方法:取得作業系統的版本資訊
10.1.9 processIdentifier: 方法:取得處理程序的識別字
10.1.10 arguments: 方法:取得處理程序的參數
10.1.11 hostName: 方法:取得主機名稱
10.1.12 setProcessName: 方法:設定處理程序的名稱
10.1.13 processorCount: 方法:取得CPU 的數目
10.2 執行緒的建立及初始化
10.2.1 detachNewThreadSelector: 方法:建立執行緒
10.2.2 init: 方法:初始化執行緒
10.2.3 initWithTarget: 方法:初始化執行緒
10.3 執行執行緒
10.3.1 start: 方法:開啟執行緒
10.3.2 cancel: 方法:取消執行緒
10.3.3 exit: 方法:結束執行緒
10.4 取得與設定執行緒
10.4.1 currentThread: 方法:取得目前執行緒
10.4.2 threadPriority: 方法:取得屬性值
10.4.3 setThreadPriority: 方法:設定屬性值
10.4.4 name: 方法:取得名稱
10.4.5 setName: 方法:設定名稱
10.4.6 stackSize: 方法:取得堆疊
10.4.7 setStackSize: 方法:設定堆疊
10.5 判斷執行緒
10.5.1 isMultiThreaded: 方法:判斷執行緒是否為主執行緒
10.5.2 isExecuting: 方法:判斷執行緒是否在執行
10.5.3 isCancelled: 方法:判斷執行緒是否取消
10.5.4 isFinished: 方法:判斷執行緒是否結束
10.6 使用互斥鎖
10.6.1 lock: 方法:呼叫鎖
10.6.2 unlock: 方法:關閉鎖
10.6.3 trylock: 方法:鎖定鎖
10.6.4 lockBeforeDate: 方法:在一定時間內取得鎖
10.7 使用遞迴鎖
10.7.1 lock: 方法:呼叫鎖
10.7.2 unlock: 方法:關閉鎖
10.7.3 tryLock: 方法:取得鎖
10.7.4 lockBeforeDate: 方法:在一定時間內取得鎖
10.8 使用條件鎖
10.8.1 initWithCondition: 方法:初始化條件鎖
10.8.2 condition: 方法:取得條件
10.8.3 lockWhenCondition: 方法:在條件允許下呼叫鎖
10.8.4 unlockWithCondition: 方法:在條件允許下關閉鎖
10.8.5 tryLockWhenCondition: 方法:在條件允許下取得鎖
10.8.6 lockWhenCondition: 方法:在條件和時間允許下取得鎖
10.8.7 tryLock: 方法:取得鎖
10.8.8 lockBeforeDate: 方法:在一定時間下取得鎖
10.8.9 lock: 方法:呼叫鎖
10.8.10 unlock: 方法:關閉鎖
10.9 小結
Chapter 11 資料物件及歸檔(NSData、NSKeyedArchiver)
11.1 資料物件的建立及初始化
11.1.1 data: 方法:建立資料物件
11.1.2 dataWithBytes: 方法:用已有資料建立資料物件
11.1.3 dataWithContentsOfFile: 方法:將資料物件內容設定為指定檔案內容
11.1.4 dataWithContentsOfURL: 方法:將建立物件的內容設定為url 指定的內容
11.1.5 dataWithData: 方法:用已有資料物件建立新的資料物件
11.1.6 init: 方法:初始化資料物件
11.1.7 initWithBytes: 方法:用已有資料初始化資料物件
11.1.8 initWithContentsOfFile: 方法:對資料物件初始化並將其設定為指定檔案內容
11.1.9 initWithContentsOfURL: 方法:對資料物件初始化並將其設定為指定url 內容
11.1.10 initWithData: 方法:用已有資料物件初始化新的資料物件
11.2 資料物件的使用
11.2.1 bytes: 方法:將資料物件轉為字元
11.2.2 dataUsingEncoding: 方法:將字串轉為資料物件
11.2.3 length: 方法:計算資料物件的長度
11.2.4 isEqualToData: 方法:判斷兩個資料物件是否相等
11.2.5 subdataWithRange: 方法:截取資料物件
11.2.6 writeToFile: 方法:寫入檔案
11.2.7 writeToURL: 方法:寫入url
11.3 可變資料物件
11.3.1 dataWithCapacity: 方法:建立一個具有固定空間大小的可變資料物件
11.3.2 dataWithLength: 方法:建立具有固定長度的可變資料物件
11.3.3 initWithCapacity: 方法:初始化具有固定空間大小的可變資料物件
11.3.4 initWithLength: 方法:初始化具有固定長度的可變資料物件
11.3.5 setData: 方法:設定內容
11.3.6 setLength: 方法:設定長度
11.3.7 appendBytes: 方法:增加資料
11.3.8 appendData: 方法:增加資料物件
11.3.9 mutableBytes: 方法:可變資料物件轉化為字元
11.3.10 replaceBytesInRange: 方法:取代7
11.3.11 resetBytesInRange: 方法:刪除
11.4 歸檔
11.4.1 archiveRootObject: 方法:資料歸檔
11.4.2 unarchiveObjectWithFile: 方法:取消歸檔
11.4.3 encodeBool: 方法:對布林類型的資料編碼
11.4.4 decodeBoolForKey: 方法:對布林類類型資料解碼
11.4.5 encodeInt: 方法:對整類型資料編碼
11.4.6 decodeIntForKey: 方法:對整類型資料解碼
11.4.7 encodeFloat:/encodeDouble: 方法:對浮點數態資料編碼
11.4.8 decodeFloatForKey:/decodeDoubleForKey: 方法:對浮點數態資料解碼
11.4.9 encodeObject: 方法:對物件進行編碼
11.4.10 decodeObjectForKey: 方法:對物件進行解碼
11.4.11 archivedDataWithRootObject: 方法:將其他類型的資料進行轉換
11.4.12 initForWritingWithMutableData: 方法:初始化
11.4.13 initForReadingWithData: 方法:初始化
11.5 小結
Chapter 12 視窗和顏色(NSWindow、NSColor)
12.1 取得視窗資訊
12.1.1 aspectRatio: 方法:取得視窗的縱橫比
12.1.2 orderedIndex: 方法:取得索引
12.1.3 title: 方法:取得視窗的標題
12.1.4 miniwindowTitle: 方法:取得視窗最小化後的標題
12.1.5 frame: 方法:取得視窗的位置和大小
12.1.6 minSize: 方法:取得視窗的最小尺寸
12.1.7 maxSize: 方法:取得視窗的最大尺寸
12.1.8 miniwindowImage: 方法:取得視窗最小化後的圖片
12.1.9 backgroundColor: 方法:取得視窗的背景顏色
12.1.10 childWindows: 方法:取得子視窗
12.1.11 alphaValue: 方法:取得視窗的透明度值
12.2 設定視窗
12.2.1 setAspectRatio: 方法:設定視窗的縱橫比
12.2.2 setIsVisible: 方法:設定視窗是否可見
12.2.3 setTitle: 方法:設定視窗標題
12.2.4 setMiniwindowTitle: 方法:設定視窗最小化後的標題
12.2.5 setIsMiniaturized: 方法:設定視窗是否最小化
12.2.6 setIsZoomed: 方法:設定視窗是否最大化
12.2.7 setFrame: 方法:設定視窗的位置和大小
12.2.8 setFrameOrigin: 方法:設定視窗的位置
12.2.9 setFrameTopLeftPoint: 方法:設定視窗的位置
12.2.10 setMinSize: 方法:設定視窗的最小尺寸
12.2.11 setMaxSize: 方法:設定視窗的最大尺寸
12.2.12 setMiniwindowImage: 方法:設定視窗最小化後的圖片
12.2.13 setBackgroundColor: 方法:設定視窗的背景顏色 .
12.2.14 setCanHide: 方法:設定視窗是否可以隱藏
12.2.15 setAlphaValue: 方法:設定視窗的透明度值
12.2.16 disableFlushWindow: 方法:將視窗設定為禁用的
12.2.17 setHasShadow: 方法:設定視窗的陰影
12.3 判斷視窗
12.3.1 isVisible: 方法:判斷視窗是否可見
12.3.2 isMiniaturized: 方法:判斷視窗是否最小化
12.3.3 isZoomed: 方法:判斷視窗是否最大化
12.3.4 canHide: 方法:判斷視窗是否可以隱藏
12.3.5 hasShadow: 方法:判斷視窗是否有陰影
12.3.6 isMiniaturizable: 方法:判斷視窗是否有最小化按鈕
12.3.7 hasTitleBar: 方法:判斷視窗是否有工具列
12.4 建立自訂顏色物件
12.4.1 colorWithCalibratedRed: 方法:用標準RGB 分量建立顏色物件
12.4.2 colorWithCalibratedWhite: 方法:用標準灰階分量建立顏色物件
12.4.3 colorWithCalibratedHue: 方法:用標準HSB 分量建立顏色物件
12.4.4 colorWithDeviceCyan: 方法:用裝置CMYB 分量建立顏色物件
12.4.5 colorWithDeviceRed: 方法:用裝置RGB 分量建立顏色物件
12.4.6 colorWithDeviceWhite: 方法:用裝變灰階分量建立顏色物件
12.4.7 colorWithDeviceHue: 方法:用裝置HSB 分量建立顏色物件
12.4.8 colorWithPatternImage: 方法:用影像建立顏色物件
12.5 建立顏色物件
12.5.1 redColor: 方法:用紅色建立顏色物件
12.5.2 greenColor: 方法:用綠色建立顏色物件
12.5.3 blueColor: 方法:用藍色建立顏色物件
12.5.4 cyanColor: 方法:用青色建立顏色物件
12.5.5 magentaColor: 方法:用紫紅色建立顏色物件
12.5.6 yellowColor: 方法:用黃色建立顏色物件
12.5.7 blackColor: 方法:用黑色建立顏色物件
12.5.8 brownColor: 方法:用棕色建立顏色物件
12.5.9 darkGrayColor: 方法:用深灰色建立顏色物件
12.5.10 grayColor: 方法:用灰色建立顏色物件
12.5.11 lightGrayColor: 方法:用淺灰色建立顏色物件
12.5.12 orangeColor: 方法:用橙色建立顏色物件
12.5.13 purpleColor: 方法:用紫色建立顏色物件
12.5.14 whiteColor: 方法:用白色建立顏色物件
12.6 取得顏色分量
12.6.1 redComponent: 方法:取得紅色的分量
12.6.2 greenComponent: 方法:取得綠色的分量
12.6.3 blueComponent: 方法:取得藍色的分量
12.6.4 cyanComponent: 方法:取得青色的分量
12.6.5 magentaComponent: 方法:取得紫紅色分量
12.6.6 yellowComponent: 方法:取得黃色分量
12.6.7 blackComponent: 方法:取得黑色的分量
12.6.8 whiteComponent: 方法:取得白色的分量
12.6.9 alphaComponent: 方法:取得透明度分量
12.6.10 hueComponent: 方法:取得色調的分量
12.6.11 saturationComponent: 方法:取得飽和度的分量
12.6.12 brightnessComponent: 方法:取得亮度分量
12.6.13 patternImage: 方法:取得影像資訊
12.7 小結
Chapter 13 自訂視圖(NSView)
13.1 initWithFrame: 方法:初始化自訂視圖
13.2 取得與設定自訂視圖資訊
13.2.1 frame: 方法:取得自訂視圖的框架
13.2.2 setFrame: 方法:設定自訂視圖框架
13.2.3 frameRotation: 方法:取得自訂視圖的旋轉度數
13.2.4 setFrameRotation: 方法:設定自訂視圖旋轉度數
13.2.5 setFrameOrigin: 方法:設定自訂視圖的位置
13.2.6 setFrameSize: 方法:設定自訂視圖的大小
13.2.7 bounds: 方法:取得自訂視圖框架
13.2.8 setBounds: 方法:設定自訂視圖框架
13.2.9 boundsRotation: 方法:取得自訂視圖的旋轉度數
13.2.10 setBoundsRotation: 方法:設定自訂視圖旋轉的度數
13.2.11 setBoundsOrigin: 方法:設定視圖的位置
13.2.12 setBoundsSize: 方法:設定視圖的大小
13.2.13 subviews: 方法:取得子視圖
13.2.14 setPostsFrameChangedNotifications: 方法:設定是否接收視圖的變化
13.2.15 setPostsBoundsChangedNotifications: 方法:設定是否接收視圖的變化
13.2.16 printJobTitle: 方法:取得輸出標題
13.3 drawRect: 方法:繪圖
13.4 判斷自訂視圖
13.4.1 postsFrameChangedNotifications: 方法:判斷是否接收視圖轉換的訊息
13.4.2 postsBoundsChangedNotifications: 方法:判斷是否接收視圖轉換的訊息
13.4.3 isFlipped: 方法:判斷視圖是否翻轉
13.4.4 isRotatedFromBase: 方法:判斷視圖是否旋轉
13.4.5 isRotatedOrScaledFromBase: 方法:判斷視圖是否旋轉或縮放
13.4.6 canDraw: 方法:判斷視圖是否繪製
13.4.7 isOpaque: 方法:判斷視圖是否不透明
13.5 操作自訂視圖
13.5.1 addSubview: 方法:增加子視圖
13.5.2 removeFromSuperview: 方法:刪除子視圖
13.5.3 replaceSubview: 方法:取代視圖
13.6 小結
Chapter 14 文字標籤和文字視圖(NSTextField、NSTextView)
14.1 取得與設定文字標籤資訊
14.1.1 stringValue: 方法:取得文字標籤的字串
14.1.2 setStringValue: 方法:設定文字標籤中的字串
14.1.3 backgroundColor: 方法:取得文字標籤的背景顏色
14.1.4 setBackgroundColor: 方法:設定文字標籤的背景顏色
14.1.5 textColor: 方法:取得字串的顏色
14.1.6 setTextColor: 方法:設定字串的顏色
14.1.7 setImportsGraphics: 方法:設定是否可以將影像拖到文字標籤
14.1.8 setEditable: 方法:設定文字標籤是否可以編輯
14.1.9 bezelStyle: 方法:取得文字標籤邊框的風格
14.1.10 setBezelStyle: 方法:設定文字標籤邊框的風格
14.1.11 setBezeled: 方法:設定文字標籤是否接受bezeled 邊框
14.1.12 setBordered: 方法:設定文字標籤是否接受黑邊框
14.2 判斷文字標籤資訊
14.2.1 importsGraphics: 方法:判斷是否可以將影像拖到文字標籤
14.2.2 isEditable: 方法:判斷文字標籤是否可以編輯
14.2.3 isBezeled: 方法:判斷文字標籤是否接受bezeled 邊框
14.2.4 isBordered: 方法:判斷文字標籤是否接受黑邊框
14.2.5 acceptsFirstResponder: 方法:判斷文字標籤是否可以編輯
14.3 initWithFrame: 方法:建立並初始化文字視圖
14.4 取得與設定文字視圖資訊
14.4.1 backgroundColor: 方法:取得文字視圖的顏色
14.4.2 setBackgroundColor: 方法:設定文字視圖的背景顏色
14.4.3 setImportsGraphics: 方法:設定檔案是否可以匯入到文字視圖
14.4.4 setAcceptsGlyphInfo: 方法:設定文字視圖是否接受字形資訊
14.4.5 setAlignment: 方法:設定文字視圖內容的對齊方式
14.4.6 insertionPointColor: 方法:取得插入點的顏色
14.4.7 setInsertionPointColor: 方法:設定插入點的顏色
14.4.8 setAllowsUndo: 方法:設定文字視圖是否可以取消
14.4.9 selectedTextAttributes: 方法:取得用於指示選擇的屬性
14.4.10 setSelectedTextAttributes: 方法:設定文字視圖用於指示選擇的屬性
14.4.11 textContainer: 方法:取得文字標籤的文字容器
14.4.12 acceptableDragTypes: 方法:取得文字視圖的資料類型
14.4.13 markedTextAttributes: 方法:取得繪製標記的文字屬性
14.4.14 setMarkedTextAttributes: 方法:設定繪製標記的文字屬性
14.4.15 setSmartInsertDeleteEnabled: 方法:設定選擇字串周圍的空間
14.4.16 markedRange: 方法:取得被標記文字的範圍
14.4.17 selectedRange: 方法:取得選取文字的範圍
14.4.18 setSelectedRange: 方法:設定文字的選取範圍
14.4.19 typingAttributes: 方法:取得新文字的屬性
14.4.20 setTypingAttributes: 方法:設定新文字的屬性
14.5 判斷文字視圖的資訊
14.5.1 importsGraphics: 方法:判斷檔案是否可以匯入到文字視圖
14.5.2 acceptsGlyphInfo: 方法:判斷文字視圖是否接受字形資訊
14.5.3 allowsUndo: 方法:判斷文字視圖是否啟用取消
14.5.4 smartInsertDeleteEnabled: 方法:判斷選擇字串周圍的空間
14.6 小結
Chapter 15 影像、影像視圖(NSImage、NSImageView)
15.1 載入影像
15.1.1 imageNamed: 方法:載入Supporting Files 資料夾中的圖片
15.1.2 initWithContentsOfURL: 方法:載入URL 中的影像
15.1.3 initWithContentsOfFile: 方法:載入檔案中的圖片
15.1.4 initWithSize: 方法:載入影像的大小
15.2 取得與設定影像資訊
15.2.1 size: 方法:取得影像的大小
15.2.2 setSize: 方法:設定影像的大小
15.2.3 setFlipped: 方法:設定影像是否倒立
15.2.4 cacheMode: 方法:取得影像的快取模式
15.2.5 setCacheMode: 方法:設定影像的快取模式
15.2.6 backgroundColor: 方法:取得影像的背景顏色
15.2.7 setBackgroundColor: 方法:設定影像的背景顏色
15.2.8 name: 方法:取得影像的名稱
15.2.9 setName: 方法:設定影像的名稱
15.2.10 setTemplate: 方法:設定影像是否表示一個模版影像
15.2.11 imageTypes: 方法:取得影像類型
15.2.12 imageUnfilteredTypes: 方法:取得影像類型
15.2.13 imageFileTypes: 方法:取得檔案類型
15.2.14 imageUnfilteredFileTypes: 方法:取得檔案類型
15.2.15 imagePasteboardTypes: 方法:取得剪貼簿類型
15.2.16 imageUnfilteredPasteboardTypes: 方法:取得剪貼簿類型
15.2.17 representations: 方法:取得影像表示
15.3 判斷影像資訊
15.3.1 isFlipped: 方法:判斷影像是否倒立
15.3.2 prefersColorMatch: 方法:判斷影像色彩轉換
15.3.3 isTemplate: 方法:判斷影像是否為模版影像
15.4 取得與設定影像視圖
15.4.1 image: 方法:取得顯示影像的資訊
15.4.2 setImage: 方法:設定顯示的影像
15.4.3 imageAlignment: 方法:取得影像的對齊方式
15.4.4 setImageAlignment: 方法:設定影像的對齊方式
15.4.5 imageFrameStyle: 方法:取得框架的風格
15.4.6 setImageFrameStyle: 方法:設定框架的風格
15.4.7 imageScaling: 方法:取得影像縮放的方式
15.4.8 setImageScaling: 方法:設定影像縮放方式
15.4.9 isEditable: 方法:判斷影像視圖是否可以編輯
15.4.10 setEditable: 方法:設定影像視圖是否編輯
15.4.11 allowsCutCopyPaste: 方法:判斷影像是否可複製、貼上等操作
15.4.12 setAllowsCutCopyPaste: 方法:設定影像是否可複製、貼上等操作
15.4.13 animates: 方法:判斷影像視圖是否播放動畫
15.4.14 setAnimates: 方法:設定影像視圖是否播放動畫
15.5 小結
Chapter 16 表格視圖(NSTableView)
16.1 取得表格視圖資訊
16.1.1 rowHeight: 方法:取得表格視圖的行高
16.1.2 headerView: 方法:取得NSTableHeaderView 物件
16.1.3 intercellSpacing: 方法:取得表單元之間的間距
16.1.4 numberOfColumns: 方法:取得表格視圖中的列數
16.1.5 numberOfRows: 方法:取得表格視圖的行數
16.1.6 numberOfSelectedColumns: 方法:取得選取的列數
16.1.7 numberOfSelectedRows: 方法:取得選擇的行數
16.1.8 rowSizeStyle: 方法:取得行風格
16.2 設定表格視圖的資訊
16.2.1 setRowHeight: 方法:設定表格視圖的行高
16.2.2 setIntercellSpacing: 方法:設定表單元之間的間距
16.2.3 setRowSizeStyle: 方法:設定行風格
16.2.4 setAllowsColumnReordering: 方法:設定使用者是否可以重新排列列標題
16.2.5 setAllowsColumnResizing: 方法:設定是否可以調整列標題
16.2.6 setAllowsColumnSelection: 方法:設定是否可以選擇一整列
16.2.7 setAllowsTypeSelect: 方法:設定是否可以透過按鍵字元進行選擇
16.2.8 setAllowsMultipleSelection: 方法:設定是否允許選擇多行或多列
16.3 判斷表格視圖資訊
16.3.1 allowsColumnReordering: 方法:判斷使用者是否可以重新排列列標題
16.3.2 allowsColumnResizing: 方法:判斷是否可以調整列標題
16.3.3 allowsColumnSelection: 方法:判斷是否可以選擇一整列
16.3.4 allowsEmptySelection: 方法:判斷是否允許有0 個行或列被選取
16.3.5 allowsTypeSelect: 方法:判斷是否可以透過按鍵字元進行選擇
16.3.6 allowsMultipleSelection: 方法:判斷是否允許選擇多行或多列
16.4 小結
Chapter 17 常見控制項(NSButton、NSDatePicker、NSProgressIndicator、NSComboBox)
17.1 按鈕控制項(NSButton)
17.1.1 title: 方法:取得按鈕的標題
17.1.2 setTitle: 方法:設定按鈕的標題
17.1.3 image: 方法:取得按鈕的影像
17.1.4 setImage: 方法:設定按鈕的影像
17.1.5 isTransparent: 方法:判斷按鈕是否透明
17.1.6 setTransparent: 方法:設定按鈕是否透明
17.1.7 showsBorderOnlyWhileMouseInside: 方法:判斷邊框的顯示
17.1.8 setShowsBorderOnlyWhileMouseInside: 方法:設定邊框的顯示
17.1.9 setButtonType: 方法:設定按鈕的顯示類型
17.2 日期選擇器(NSDatePicker)
17.2.1 datePickerStyle: 方法:取得日期選擇器的樣式
17.2.2 setDatePickerStyle: 方法:設定日期選擇器的樣式
17.2.3 dateValue: 方法:取得日期選擇器的起始日期值
17.2.4 setDateValue: 方法:設定日期選擇器的起始日期值
17.2.5 datePickerMode: 方法:取得日期選擇器的模式
17.2.6 setDatePickerMode: 方法:設定日期選擇器的模式
17.2.7 calendar: 方法:取得日期選擇器的日曆
17.2.8 setCalendar: 方法:設定日期選擇器的日曆
17.2.9 locale: 方法:取得日期選擇器的語言環境
17.2.10 setLocale: 方法:設定日期選擇器的語言環境
17.2.11 timeZone: 方法:取得日期選擇器的時區
17.2.12 setTimeZone: 方法:設定日期選擇器的時區
17.2.13 maxDate: 方法:取得日期選擇器的最大日期
17.2.14 setMaxDate: 方法:設定日期選擇器的最大日期
17.2.15 minDate: 方法:取得日期選擇器的最小日期
17.2.16 setMinDate: 方法:設定日期選擇器的最小日期
17.3 進度指示器(NSProgressIndicator)
17.3.1 style: 方法:取得進度指示器的風格
17.3.2 setStyle: 方法:設定進度指示器的風格
17.4 下拉式清單方塊(NSComboBox)
17.4.1 hasVerticalScroller: 方法:判斷下拉式清單方塊是否有垂直捲動條
17.4.2 setHasVerticalScroller: 方法:設定下拉式清單方塊是否有垂直捲動條
17.4.3 numberOfVisibleItems: 方法:取得可見項目的最大數量
17.4.4 setNumberOfVisibleItems: 方法:設定可見項目的最大數量
17.4.5 intercellSpacing: 方法:取得下拉清單項之間的間距
17.4.6 setIntercellSpacing: 方法:設定下拉清單項之間的間距
17.4.7 itemHeight: 方法:取得下拉清單中項目的高度
17.4.8 setItemHeight: 方法:取得下拉清單中項目的高度
17.4.9 addItemWithObjectValue: 方法:增加一個物件
17.4.10 addItemsWithObjectValues: 方法:增加多個物件對
17.4.11 insertItemWithObjectValue: 方法:插入物件
17.4.12 objectValues: 方法:取得下拉清單中的項
17.4.13 numberOfItems: 方法:取得下拉清單中項目總數
17.4.14 removeAllItems: 方法:刪除所有的項目
17.4.15 removeItemWithObjectValue: 方法:刪除某一項目
17.4.16 selectItemWithObjectValue: 方法:選擇某一項目
17.5 小結
Chapter 01 Objective-C 學習環境準備
1.1 Objective-C 基礎
1.1.1 Objective-C 的發展歷史
1.1.2 Objective-C 語言的特點
1.1.3 技術架構
1.2 開發環境
1.2.1 註冊開發者帳號
1.2.2 下載安裝Xcode
1.2.3 更新說明文件
1.3 撰寫第一個Objective-C 程式
1.3.1 建立專案
1.3.2 撰寫程式
1.3.3 執行程式
1.3.4 使用幫助
1.4 小結
Chapter 02 數學運算(math)函數
2.1 算數運算函數
2.1.1 rand() 函數:產生亂數
2.1.2 abs() 函數/labs() 函數:整數的絕對值
2.1.3 fabs()/fabsf()/fabsl() 函數:浮點數的絕對值
...
商品資料
出版社:佳魁資訊股份有限公司出版日期:2014-07-30ISBN/ISSN:9789865712709 語言:繁體中文For input string: ""
裝訂方式:平裝頁數:544頁
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。