Xcode技巧系列:http://www.lxweimin.com/notebooks/7639304/latest
1.管理文件
創建全新的文件
方法一:File->New File
方法二:右鍵->New File
方法三:Command+N
創建后,如圖:
|名稱|作用|說明|
|::|::|:-:|
|Cocoa Touch Class|創建一個Cocoa Touch類文件|該文件創建時需要選擇繼承于哪一個父類,一般創建文件選擇該方式|
|UI Test Case|創建一個UI測試文件|手動添加UI測試文件來進行測試|
|Unit Test Case Class|創建一個單元測試文件|手動添加單元測試文件|
|Playground|創建一個Playground文件|-|
|Swift File|創建一個Swift文件|-|
|Objective-C File|創建一個OC文件|創建OC文件時,可以選擇文件的類型:Empty File空文件,Category類別,Protocol協議,Extension擴展|
|Header File|創建一個頭文件|-|
|C File|創建一個C文件|-|
|C++ File|創建一個C++文件|-|
|Metal File|創建一個具有Metal技術的文件|-|
|Storyboard|創建一個故事版|-|
|View|創建一個View|-|
|Empty|創建一個空的文件|-|
|Launch Screen|創建一個啟動界面|-|
通過文件模板庫創建
直接拖動該模板庫的文件到項目導航器相應位置即可快速創建
添加已有文件到項目
方法一:File->Add Files to
方法二:右鍵->Add Files to
方法三:Option+Command+A
完成上面的操作,會彈出一個窗口,如圖:
點擊Options可以看到一些選項:
Destination:將會使Xcode將所選文件復制到項目的相應目錄下,如果不勾選,則只是添加引用,沒有將文件復制到項目中。這一點得特別注意!!!!
Added folders:Xcode將文件夾添加到項目的時候采用什么方式。
- Create groups:創建與文件夾同名的分組,然后將該文件夾的所有內容保留到該分組下。圖標是黃色的。
- Create folder references:創建文件夾引用,圖標是藍色的。
Add to targets:添加到目標對象,選擇你要添加到的項目中即可。
直接拖動文件到項目
直接拖動文件到項目導航器相應位置中,會出現與Add Files to可選項類似的彈出框,設置方式同上。
根據個人經驗,源代碼最好不要采用拖動的方式添加到項目,因為不好管理,我采用的方式是先拖動到項目的文件夾中,然后使用Add Files to的方式添加。拖動的一般是資源文件,比如圖片等。
重命名文件
1.在項目導航器中選擇需要修改的文件,修改即可。
2.也可在工具區域中文件檢查器的Identity and type項目修改Name
應該要特別注意一點,如果說修改了文件擴展名,那么需要在Identity and type中修改type這個選項。因為Xcode記錄下的是原文件的編譯方式,修改過后,需要手動更改
如下所示,我修改了First.m文件為.mm文件,那么需要把type修改為OC++類型。
分組管理
源碼以分組的形式顯示的,點擊分組旁邊的小三角,可以打開或關閉分組。如果同時按住Option鍵,可以同時打開或關閉全部分組。
分組不會影響到文件的物理存儲結構,但是分組的刪除移動命名等操作是不可恢復的,操作之前萬分小心。
創建分組:
1.File->New Group
2.右鍵->New Group
3.Option+Command+N
刪除分組:
1.Edit->Delete
2.選中,點擊鍵盤delete鍵
3.右鍵->delete
刪除分組后,分組下的文件或分組也會刪除,刪除前請先移動出來。
刪除文件
刪除文件時,會彈出一個對話框,你需要選擇:
Remove Reference:刪除文件的引用,不會刪除物理存放的文件
Move to Trash:從磁盤中刪除,會把物理位置的文件也刪除
2.Target管理
如圖所示:一個項目中可能包含很多個對象(Target),簡單的說,一個對象就是一個實際可運行的應用。
添加對象
1.File->New->Target
2.下方的"+"添加
可添加的對象有很多,就不列舉了。
PROJECT設置
在上圖,我可以看到,有PROJECT設置和TARGET設置。
PROJECT項目設置:該設置會應用于TARGETS內的所有對象。可設置內容如圖:
info:項目的信息
- Deployment Target:所有對象的最低OS版本
- Configurations:所有對象可用編譯配置
- Localizations:指定應用程序本地化的語言
Build Settings:編譯配置,該配置和對象的編譯配置幾乎相同
TARGET設置
1.通用選項General:
Identity:
- Display Name:項目名稱,默認就好
- Bundle Identifier:包標識符,該ID是唯一的,上架的時候App Store用來識別APP用的,一般不要修改
- Version:外部版本號,用戶能夠看到
- Build:內部版本號,開發者自己看的,區分測試版本用
Signing:應用程序的簽名,如果有開發者賬號,并且申請了證書,需要在這進行配置
Deployment Info:
- Deployment Target:對象支持運行的版本
- Devices:支持的設備
- Main Interface:啟動時加載的主界面,如果使用了storyboard,該值會是Main,如果純代碼編程,則需要設置為空,然后刪掉storyboard。
- Device Orientation:應用支持的方向
- Status Bar Style:狀態欄的樣式
App Icons and Launch Images:APP的圖標和啟動加載頁設置
Embedded Binaries:綁定的二進制文件,使用了第三方SDK時會需要
Linked Frameworks and Libraries:使用系統自帶的SDK時選擇,也可以添加第三方框架
2.功能選項Capabilities:
設置對象支持的功能。
3.資源Resource Tags
該功能是將資源放到appstore,在需要的時候進行下載。該功能沒怎么使用,不甚了解。
4.信息Info
Custom iOS Target Properties:自定義目標屬性,由于關鍵字太多,請參考蘋果官方文檔
Document Types:定義了程序能夠識別的文檔類型,不需要識別文檔的應用無需設置
Exported UTLs:導出UTI,定義UTI讓應用能夠識別對應的文件類型
imported UTLs:和上面對應,用來導入UTI
URL Types:讓應用程序之間理解和交互數據用的。最多是用在APP之間的跳轉的時候。
5.編譯設置Build Settings
過濾欄設置:
- Basic:顯示最常用的設置
- Customized:自定義的設置
- All:顯示全部設置
- Combined:當個對象的編譯設置
- Levels:所有對象的編譯設置
具體的設置由于太多,請參考蘋果開發文檔。要注意的是,這些設置會影響到編譯、鏈接、生成等操作,請不要隨意修改。
6.編譯階段Build Phases
編譯階段是當前對象編譯過程中的一個階段,系統默認有對象依賴、匯編資源以及復制包資源等。可以自行添加額外的階段,設置還可以用Shell腳本以便在編譯處理期提供更復雜、精確的控制
1.Target Dependencies:對象依賴階段,讓Xcode知道必須在當前選擇的對象編譯之前編譯其他依賴的對象,比如擴展,插件,該階段無法刪除。
2.Compile Sources:編譯源文件階段,按照該項中的定義,用合適的編譯器來編譯該對象的所有源文件。可以通過修改該階段的Compiler Flags來為每個單獨文件設置其編譯器標識,比如設置單個文件支持MRC。
3.Link Binary With Libraries:連接二進制文件和庫,可以控制對象需要連接哪些二進制文件和庫,只要使用了二進制文件或庫,就必須要鏈接他們。系統庫不會出現在這里,重復添加不會造成框架的重復引用。
4.Copy Bundle Resources:復制包資源階段,復制對象中定義了的資源文件,復制到安裝包下面。
可以通過“+”添加另外3種編譯階段。
1.Copy Files:標識文件復制的目標路徑
2.Headers:指定頭文件以及可見性。Public可見,private不可見,project編譯對象時使用
3.Run Script:使腳本運行,可以在腳本編輯器區域編輯,也可以放一個腳本文件進來
7.編譯規則Build Rules
用于定義文件類型以及用于編譯他們的處理器之間的關聯。
8.對象之間的聯系
很多時候,某些文件可能需要在多個對象之間共享,因此,可以在這個文件與多個對象之間建立聯系。
創建文件的時候,就提示我們選擇對象。如果需要手動添加聯系,只需要在項目導航器中選中該文件,然后在文件檢查器中:
在Target Membership中選擇需要聯系的對象即可。
9.刪除對象
在項目導航器中選中項目文件,然后找到對象列表,點擊需要刪除的對象,按delete或者下方的“-”即可刪除。該對象關聯的文件不會被刪除。
3.資源管理
在項目導航欄上,可以找到Asset Catalog就是資源目錄。可以存放的圖片類型:
1.圖片集
2.應用圖標
3.加載界面
4.OS X圖標
1.創建Asset Catalog
系統自動創建了資源文件夾,如圖:
如果我們需要自己創建的話,創建方法和創建文件類似,選擇Asset Catalog即可。
2.添加圖標
在資源目錄中,我們可以看到AppIcon這個圖片集,這就是APP的圖標,當然,如果沒有該集,可以手動創建。
選擇App Icons & Launch Images->選擇要創建的圖片集類型即可。
Xcode對于圖標的尺寸是有嚴格限制的,分辨率不對應的圖片放進去是會有警告的。
在屬性檢查器中,可以設置應用圖標集的名稱,所支持的版本,尺寸,iOS icon is pre-rendered選項勾選,iOS系統就不會再主界面上給予這個圖標添加圓角和高光。
注意:如果說你不小心刪除了系統自帶的資源文件夾,然后自己創建了一個,此時,Xcode是無法識別應用圖標集的,需要配置:選中圖標集所屬對象->定位到general選項卡->找到App Icons and Launch Images->App Icons Source->在下拉列表中選中自定義的圖標集即可。
3.添加加載界面
加載界面的添加和圖標很類似。
iOS8以后,Xcode添加了另外一種加載方式,默認是通過XIB文件加載,如果需要采用加載圖片的方式加載,則需要把上圖所示的Launch screen file中清空,然后在Launch images source中選擇圖片集即可。
4.管理圖片集
將圖片拖到資源目錄即將圖片添加到項目中創建。
如果圖片不滿足大小,可以使用切片功能(Editor->Show Slicing或者下方Show Slicing按鈕,然后點擊Start Slicing按鈕開始),將圖片分割。由于切片功能更也有很多內容就不詳細說明了。
5.移除圖片集
選中圖片集,按delete或者右鍵->remove Selected items即可。
移除圖片集中的圖片,并不會移除該圖片的格子,需要在屬性檢查器中的Devices屬性來進行刪除