讀古今文學網 > iOS編程基礎:Swift、Xcode和Cocoa入門指南 > 6.1 新建項目 >

6.1 新建項目

甚至在編寫代碼前,Xcode項目就已經非常複雜了。為了更好地理解,我們創建一個全新的「空」項目;你很快就會發現這根本就不是一個空項目。

1.打開Xcode並選擇File→New→New Project。

2.這時會彈出「Choose a template」對話框。模板是項目初始文件與設置的集合。在選擇模板時,你實際上選擇的是現有的包含了文件的目錄;基本上,這些目錄位於Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/iOS/Application中。本質上,Xcode會複製該目錄並填充一些值來創建項目。

對於該示例來說,請選擇左邊iOS下的Application。在右邊選擇Single View Application,然後單擊Next。

3.現在需要為項目起個名字(Product Name),請輸入Empty Window作為項目名。

在真實的項目中,你需要好好想想項目名,因為你要經常與它打交道。由於Xcode會複製模板目錄,所以它會使用項目名「填充幾處空白」,包括應用名。這樣,你在這裡所輸入的名字將會被整個項目所用。不過,項目名確定好之後並不是永遠不會變的,有單獨的設置可以讓你在任何時候都可以修改應用名。稍後將會介紹如何修改項目名(見6.6節)。

項目名中也可以包含空格。可以在項目名、應用名以及Xcode自動生成的各種文件和目錄名中使用空格;空格只在很少的地方會出現問題(比如,下面將會介紹的包標識符等),你在Product Name中輸入的名字中的空格會被轉換為連字符。不過,請不要在項目名中使用任何其他的標點符號!這些標點符號會導致Xcode的某些特性出現問題。

4.注意到Organization Identifier域。第一次創建項目時該域是空的,你應該填寫其中的內容。你需要填入一個唯一的字符串來標識自己或組織。約定的做法是以com.作為組織標識符的開頭並且後跟其他人不大會使用的字符串(可能包含多個點分隔的字符串)。比如,我會使用com.neuburg.matt。設備上或提交到App Store的每個應用都需要一個唯一的包標識符。應用的包標識符位於組織標識符下方,顯示為灰色,它由組織標識符和項目名的版本號構成;如果為自己開發的每個項目起一個唯一的名字,那麼包標識符就可以唯一區分項目以及它所生成的應用(如果需要,後面也可以手工修改包標識符)。

5.你可以通過Language彈出菜單選擇Swift與Objective-C。這個選擇並不是一成不變的;它只是規定了項目模板的初始結構與代碼,不過你可以自由向Objective-C項目中添加Swift文件,也可以向Swift項目中添加Objective-C文件。你甚至還可以從Objective-C項目開始,稍後再將其轉換為Swift。現在,請選擇Swift。

6.將Device彈出菜單設為iPhone。重申一次,這個選擇並不是一成不變的;不過現在,假設我們的應用只會運行在iPhone上。

7.不要勾選Use Core Data、Include Unit Tests與Include UI Tests,單擊Next。

8.現在Xcode已經知道該如何構建項目。基本上,它會從方才提到的Project Templates目錄中複製Single View Application.xctemplate目錄。但你需要告訴它將目錄複製到何處。這正是Xcode現在會彈出保存對話框的原因所在。你需要指定待創建的目錄位置,即該項目的項目目錄。項目目錄可以位於任何地方,你可以在創建後移動它。我常常在桌面上創建新項目。

9.Xcode還可以為項目創建git倉庫。在實際開發中,這是非常方便的(參見第9章),但現在請不要勾選該復選框,單擊Create。

10.磁盤上會創建好Empty Window項目目錄(如果你指定在桌面上創建項目,那麼目錄就在桌面上),Xcode會打開Empty Window項目的項目窗口。

我們剛才創建的項目是個可運行的項目;它確實可以構建出名為Empty Window的iOS應用。要想做到這一點,請確保項目窗口工具欄中的方案與目標顯示為Empty Window→iPhone 6(方案與目標實際上是個彈出菜單,如果需要可以單擊它們修改其值)。選擇Product→Run。過一會兒,iOS Simulator應用就會出現並運行你的應用,即一個空白界面。

構建項目需要編譯代碼、將編譯好的代碼和其他各種資源裝配到實際的應用中。通常,如果想要瞭解代碼是否編譯通過、項目的構建是否正確,你需要構建項目(Product→Build)。此外,還可以編譯單個文件(選擇Product→Perform Action→Compile[文件名])。要想運行項目以便啟動構建好的應用,可以在Simulator或連接的設備上運行;如果想要瞭解代碼運行是否正常,那就需要運行項目(Product→Run),如果必要,運行之前會自動構建。