Interface Builder被稱爲編輯界面。它是一個虛擬的圖形化設計工具,用來爲iOS應用程序建立圖形界面。單擊MainStoryboard.storyboard文件,就能夠打開編輯界面了。在Xamarin Studio 5.2.1後,編輯界面直接使用的是Storyboard故事面板,之前則使用的是XIB(對於XIB的使用會在後面的章節中講解)。大學霸它們之間最大的不一樣在於Storyboard故事面板能夠對多個主視圖進行設置,而XIB只能夠對一個主視圖進行設置。如下是對編輯界面的介紹。ide
1.界面構成工具
單擊MainStoryboard.storyboard文件,打開編輯界面後,能夠看到編輯界面會有4部分組成,如圖1.71所示。字體
圖1.71 界面構成ui
其中,編號爲1的部分爲主視圖的屬性設置,例如能夠設置主視圖的尺寸大小、iOS的版本等等。編號爲2的部分爲畫布,它是用於設計用戶界面的地方,在畫布中用箭頭指向的區域就是設計界面。在畫布中能夠有多個設計界面,通常將設計界面稱爲場景或者說是主視圖。編號爲3的部分爲工具欄,在此工具欄中存放了不少的視圖對象。編號爲4的部分爲屬性設置窗口,在其中能夠對視圖對象的屬性進行設置。spa
注意:在打開MainStoryboard.storyboard文件不少的開發者會遇到如下兩個問題:設計
(1)在打開MainStoryboard.storyboard文件後,會看到如圖1.72所示的錯誤。調試
出現此問題的緣由是此時的Xamarin和Xcode不匹配造成的。此錯誤的解決辦法就是將Xamarin進行升級。code
(2)在打開MainStoryboard.storyboard文件後,會看到如圖1.73所示的錯誤。orm
圖1.72 錯誤1 圖1.73 錯誤2對象
此錯誤的解決辦法就是選擇Open in Xcode Interface Builder,將Xcode的編輯界面打開,而後關掉Xcode,此時就雙擊一次MainStoryboard.storyboard文件,就能夠將此文件打開了。
2.設計主視圖
若是想要iOS Simulator上顯示一個標籤,就要對編輯界面進行設置。選擇工具欄中的Label對象,將其拖動到畫布的主視圖中,如圖1.74所示。
圖1.74 操做步驟
在屬性中,對Label標籤對象的字體顏色以及對其方式進行設置,如圖1.75所示。設置後主視圖的效果如圖1.76所示。
圖1.75 設置屬性 圖1.76 主視圖的效果
運行效果如圖1.77所示。
圖1.77 運行效果
除了可使用Interface Builder對主視圖進行設置外,還可使用代碼進行設置。代碼就是用來實現某一特定的功能,而用計算機語言編寫的命令序列的集合。如今就來實現經過代碼將標籤中顯示的內容設置爲Hello World字符串,操做步驟以下:
(1)回到MainStoryboard.storyboard文件,選擇主視圖上的Label對象,而後在屬性的Identity下將Name設置爲mylabel。(Name屬性將至關於爲Label對象起了一個別名,開發者能夠經過在Name中設置的內容來控制Label標籤,其餘的視圖也同樣)。
(2)打開HelloWorldViewController.cs文件,編寫代碼,實現將標籤中顯示的內容設置爲Hello World字符串。代碼以下:
using System;
using System.Drawing;
using MonoTouch.Foundation;
using MonoTouch.UIKit;
namespace HelloWorld
{
public partial class HelloWorldViewController : UIViewController
{
…… //這裏省略了視圖控制器的構造方法和析構方法
#region View lifecycle
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
mylabel.Text="Hello World"; //設置標籤中顯示的內容
}
…… //這裏省略了視圖加載和卸載先後的一些方法
#endregion
}
}
運行效果如圖1.78所示。
圖1.78 運行效果
狀態欄就是指在iOS中顯示有時間、電池用量的區域。狀態欄分爲兩部分:第一部分爲前景部分(就是指的顯示電池、時間等部分);第二部分爲背景部分(就是顯示黑色或者圖片的背景部分),如圖1.79所示。爲了製做一個用戶體驗高的應用程序,對於狀態欄的設置是很重要的。本小節將主要講解如何對狀態欄進行設置。
圖1.79 狀態欄
1.設置狀態欄的風格
在iOS中狀態欄的風格有4種,如表1-4所示。
表1-4 狀態欄風格
要想對狀態欄的風格進行設置就須要使用到PreferredStatusBarStyle()方法。
【示例】下面將以工程HelloWorld爲基礎,將狀態欄的前景部分爲白色。具體的操做步驟以下:
(1)打開MainStoryboard.storyboard文件,將主視圖的背景顏色即Background設置爲Scrollview Textured Background color。
(2)打開HelloWorldViewController.cs文件,編寫代碼,實現狀態欄的前景部分變爲白色的效果。代碼以下:
public override UIStatusBarStyle PreferredStatusBarStyle ()
{
return UIStatusBarStyle.LightContent;
}
此時運行程序,會看到如圖1.80所示的效果。
圖1.80 運行效果
2.隱藏狀態欄
有時開發者不但願狀態欄在本身的應用程序中出現,可使用PrefersStatusBarHidden()方法將其進行隱藏。
【示例】下面將以工程HelloWorld爲基礎,將狀態欄隱藏。具體的操做步驟以下:
打開HelloWorldViewController.cs文件,編寫代碼,實現狀態欄的隱藏。代碼以下:
public override bool PrefersStatusBarHidden ()
{
return true;
}
此時運行程序,會看到如圖1.81所示的效果。
圖1.81 運行效果
調試又被稱爲排錯,是發現和減小程序錯誤的一個過程。在Xamarin Studio中進行調試的須要實現如下幾個步驟:
1.添加斷點
在進行程序調試以前,首先須要爲程序添加斷點。斷點是指能夠暫停調試器中程序的運行,並可讓開發者查看程序的地方。將光標移到到要添加斷點的地方,按住Command+\鍵或者選擇菜單欄中的「運行|切換斷點」命令進行斷點的添加,以後會在添加斷點代碼的最左邊看到一個紅色的小圓圈,而且這一行也被塗成了紅色,如圖1.82所示。
圖1.82 添加斷點 圖1.83 執行斷點
2.運行程序
單擊運行按鈕後,程序就會運行。這時運行的程序會停留在斷點所在的位置處,此代碼最左邊的圓圈中會出現黑色的箭頭,而且代碼行被塗成了黃色,表示如今程序運行到的位置,如圖1.83所示。不只如此,iOS Simulator也會顯示界面,可是沒有內容。
3.斷點導航
在程序停留下來後,會出現斷點導航,如圖1.84所示。開發者可使用此導航來控制程序的執行。
圖1.84 斷點導航
建立好工程後,會看到一些文件以及文件夾,如下針對幾個重要而且經常使用的文件進行講解。
q Resources文件夾:裏面存放了應用程序所需的資源,如圖像、音樂文件等。
q AppDelegate.cs:主要的應用程序類別(class),並接聽系統事件及相對應的事件處理.
q Entitlements.plist:設置服務是否開啓等內容。
q HelloWorldViewController.cs:負責視圖控制器的生命週期,也就是MVC分層的Controller。
q HelloWorldViewController.designer.cs:包含界面中對象的定義及動做(Action)的聲明。
q Info.plist:應用程序的信息,如名稱、版本、圖示等等。
q Main.cs:應用程序的進入點。
q MainStoryboard.storyboard:能夠用來設置應用程序的圖形界面。
本文選自:Xamarin iOS開發實戰大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!