本文由CocoaChina翻譯自蘋果官方文檔:Xcode Overview:Develop Your App in the Workspace Window,敬請勘誤。
Xcode工作區可用來執行核心開發任務,它是創建和管理工程的主界面。工程是Xcode開發中的主要單元,包含了構建應用程序所需的所有元素、框架、插件以及其他軟件產品,並維系這著這些元素之間的關系。關於工程的更多詳細信息,請參看: A Project Is a Repository of Files and Resources for Building Apps.
Xcode的工作區可以自動適應其手頭上的任務,您可以更進一步配置窗口使之適合自己的工作風格。您可以根據需要打開多個工作區。
工作區窗口組件如下圖所示:
工作區窗口包含編輯區。當您選中工程中的一個文件時,其內容會出現在編輯區,Xcode會在適當的編輯器中打開文件。比如上圖中,在工作區窗口左側的導航器中選中一個Swift代碼文件,右側的編輯區則會包含AdventureScene.swift。
工作區窗口最多可展示3個可選區域,用於在開發周期中執行不同的任務。隱藏不用的區域可幫您更好地專注於當前的任務。您可以通過工具欄最右端的工作區配置按鈕隱藏或者展示可選區。
展示和隱藏導航區域(navigator area)。您可以在導航區遍歷整個工程,包括文件、符號、斷點、編譯問題、測試以及編譯報告等,也可以搜索工程中的任何字符串。
展示和隱藏調試區(debug area)。您可以在調試區查看變量,與調試終端進行交互,以及控制應用程序的執行。
展示和隱藏實用工具區(utilities area)。您可以在該區域檢查或更改文件的屬性、圖形UI元素、sprites以及項目中的其他元素,也可以用來訪問現成的資源庫,請參看: Access Resources and Inspect Elements in the Utilities Area.
在工作區導航
您可以在導航面板中訪問工程中的文件、符號、單元測試、診斷以及其他方面。在導航欄中,您可以選擇適合自身任務的導航器,並在每個導航器的內容區(content area)訪問工程相關的部分,而且每個導航器的filter bar則可以讓您限制內容的展示。
Navigator bar中包含以下選項:
· 工程導航器(Project navigator):在工程中添加、刪除、分組以及管理文件,或者查看文件,或者在編輯區編輯其內容。
· 符號導航器(Symbol navigator):以列表或者層級形式浏覽工程中的符號。可通過Filter bar左側的按鈕將符號限制在任意類或者協議的組合,或者僅展示工程中的符號,或者僅展示容器(containers)。
· 搜索導航器(Find navigator):使用搜索或者過濾功能快速查找工程中的任何字符串。
· 問題導航器(Issue navigator):可查看在打開、分析以及構建項目過程中發現的診斷、警告以及錯誤問題。
· 測試導航器(Test navigator):創建、管理、運行以及檢查單元測試。
· 調試導航器(Debug navigator):檢查項目執行過程中某個指定點或指定時間的運行線程和相關的堆棧信息。
· 斷點導航器(Breakpoint navigator):通過指定特征(比如觸發條件)來微調斷點。
· 報告導航器(Report navigator):查看構建、運行、調試、持續集成以及源碼控制相關歷史信息。
在Filter bar文本輸入區鍵入文本,則會在內容區(Content area)展示包含該檢索詞的項目。大部分導航器在filter bar左側展示按鈕,用以進一步限制所展示的內容。部分filter bar左側有一個“+”的按鈕,可用來在content area中添加元素。報告導航器中filter bar左側的按鈕()用來與bots進行交互。關於報告導航器中Bots的用法詳情請參看Xcode Continuous Integration Guide中Manage and Monitor Bots from the Report Navigator一節。
在Content area選中文件並查看或者編輯文件。
編輯工程文件
Xcode中大部分編輯工作發生在編輯區,該區域是工作區窗口中主要的可視化區域。最常使用的編輯器有:
· 源碼編輯器(Source editor):用以編寫源代碼。
· Interface Builder:用以圖形化地創建和編輯用戶界面文件。
· 工程編輯器(Project editor):用以查看和編輯應用程序的構建方式,比如制定構建選項、目標架構以及app entitlements。
在導航器的內容區選中文件,Xcode會在相應的編輯器中打開文件。在截圖中,我們在project navigator中選擇文件iPhoneStoryboard.storyboard,那麼會在Interface Builder中打開該文件。Interface Builder在左側展示大綱視圖,並在右側展示畫布(canvas)。更多信息請參看Build a User Interface。(可選的實用工具區和調試區被隱藏,以便最大化導航器和編輯器的空間)
以下截圖展示了若干出現在搜索導航器內容區的搜索結果。選中其中一項結果,其文本字符串就出現在源碼編輯器中。
使用工具欄右側的編輯器配置按鈕,並根據既定的任務來配置編輯區域。
·標准編輯器(Standard editor):使用選中文件的內容填充編輯區。
·輔助編輯器(Assistant editor):在標准編輯器面板中展示一個邏輯上與內容相關的單獨的編輯器面板。您可以更改其內容。
·版本編輯器(Version editor):在一個面板中展示當前選文件,在第二個面板中展示該文件的另一個版本,以便比較兩者之間的差異。只有當您的工程支持源碼控制的時候,該編輯器才起作用。
下圖是一個在標准編輯器面板中打開的執行文件APAAdventureScene.m。隱藏了導航區、調試區以及工具區3個可選的工作區,最大化了編輯區的內容展示。在源碼編輯器中,輔助面板展示了執行文件相關的頭文件APAAdventureScene.h.
每個編輯器或者輔助編輯器面板都包括一個跳轉欄--一個交互式的分層機制,用以直接跳轉至工程中任意層次結構中的某個項目。跳轉欄的配置和行為可根據上下文環境
定制。一個基本的跳轉欄配置由3部分組成:
1.相關項目菜單()提供了與當前上下文環境相關的附加選項,比如最近打開的文件或者您正在編輯的執行(.m)文件的接口(.h)文件。
2.用來在導航歷史中查看上一個或者下一個文件。
3.分層路徑菜單允許您通過跳轉至一個新項目來更改編輯器或者輔助編輯器面板中展示的內容。根據您點擊的路徑,它可以由一個或者多個分段組成。
點擊分層路徑菜單中的某個分段(segment)可看到相關項目的彈出菜單。比如,如果分段可識別工程的名稱,那您可以在工程中使用跳轉欄導航至某個文件或者打開任何一個文件。如果分段可識別文件夾的名稱,那您可以使用跳轉欄打開文件夾內的文件。如果分段可識別源碼文件的名稱,那您可以在當前打開的文件中使用跳轉欄來展示並選中符號。
在實用工具區訪問資源和檢查元素
實用工具區位於工作區窗口的最右邊,您可以通過它快速訪問以下資源:
· Inspectors,用以查看和更改編輯器中打開的文件的屬性(特性)。
· 現成的庫-可用在工程中的現成庫。
下圖中,實用工具區面板的頂端是Inspectors,底部面板中放置的是可訪問使用的庫。
使用inspector欄選擇最適用於您當前任務的檢查器。通常情況下,您通常會在檢查器欄中看見兩個檢查器,其余檢查器在其他編輯器中可見。
·文件檢查器(File inspector):用以查看和管理選中文件的元數據。尤其是要本地化storyboards和其他媒體文件,並更改用戶界面文件設置時。
·快速幫助(Quick Help):查看符號的細節信息、界面元素,或者在文件中構建設置。比如Quick Help展示對方法的簡明描述,該方法何時在何處被聲明,該方法的范圍,它所需的參數,以及適用平台和可用的架構。
使用library bar 訪問現有的資源庫:
·文件模板(File templates):普通類型文件和代碼結構的模板。
·代碼片段(Code snippets):用以儲存您軟件中用到的源代碼片段,比如類聲明、control flows、block聲明以及蘋果公司常用的模板。
·(對象)Objects:應用程序用戶界面的項目。
·(媒體)Media:包含圖形、圖標、聲音文件以及諸如此類的文件。
想要在您的項目中使用現成的庫,可將其直接拖拽至適當的區域。比如,您要使用代碼片段,可將其從庫中直接拖放到源碼編輯器中;想要使用文件模板創建一個源碼文件,可將其模板拖放至工程導航器中。
想要限制某個被選中庫的項目展示數,可在 filter bar的文本域輸入相關的文本進行限制。比如,輸入“button”來展示對象庫中的所有按鈕。
使用工作區工具欄管理常見任務
工作區窗口頂部的工具欄可讓您快速訪問頻繁使用的命令。“Run”按鈕可構建和運行您的產品。“Stop”按鈕可終止代碼的運行。“Scheme menu”可讓您配置您想要創建和運行的產品。“Activity viewer”通過展示狀態信息來展示當前任務執行的進程、構建進程以及您項目的其他信息。
到此,您已經清楚了編輯器配置按鈕如何配置編輯器區域,已經了解了工作區配置按鈕如何隱藏或者展示可選的導航器區、調試區以及實用工具區。
View菜單包括隱藏或者展示工具欄的命令。
使用多個Tab或者多個窗口
使用Safari風格的tab來實現工作區窗口多重的工作流指定的布局。比如,在下方的截圖中,活躍標簽展示了資源編輯器中執行文件(APAViewController.m) 的內容,右端的是頭文件(APAViewController.h),左邊是app storyboard(iPhoneStoryboard.storyboard)。點擊某個tab,其對應的編輯器則會成為當前的活躍編輯器。
View菜單包含了展示和隱藏tab的命令。創建一個tab,可選擇File > New > Tab。想要移除tab,請將指針放在tab上並點擊關閉按鈕即可。
想要創建多個工作區窗口,可選擇 File > New Window。可定義每個tab或窗口,比如使用工具欄中的Hide/Show實用工具按鈕( )展示或隱藏實用工具區。