的Xcode Interface Builder的問題
一個UIView我個人不喜歡這個界面生成器在Xcode的工作方式。在這個例子中,我試圖創建一個相當複雜的視圖控制器。在視圖控制器的viewDidLoad
上,我顯示了一個自定義警報視圖(如此)。它實際上不是一個警報視圖,而是更多的向用戶顯示一些信息的視圖。我有一個朦朧的背景視圖和頂部的視圖。如果我嘗試在Interface Builder創建此它變得太複雜,你不能選擇在後臺的意見並將其移動等未失子視圖到錯誤的看法等等...編程方式創建具有多個標籤
方案
我我試圖做的是創建一個視圖,其中包含一些標籤和一個按鈕。視圖控制器具有基於此的難度屬性,它將在標籤/標籤數量中具有不同的文本。
I.e.易 - 3個標籤
硬盤 - 4個標籤
我創建dimmedView和警報(風格)查看這樣的:
// Setup the dimmedView
UIView *dimmedView = [[UIView alloc] initWithFrame:self.view.frame];
dimmedView.backgroundColor = [UIColor colorWithWhite:0 alpha:0.6];
// Setup the startingAlertView
UIView *startingAlertView = [[UIView alloc] init];
startingAlertView.backgroundColor = [UIColor whiteColor];
我然後創建基於一些邏輯的三/四標籤和添加基於邏輯的necassary標籤也基於邏輯startingAlertView
。
這是顯而易見的問題是,在任何時候對所述視圖中的幀被設置。這意味着它返回0,0,0,0。我想要發生的是根據添加的標籤獲取所需高度的視圖。
我正在建設IOS7並使用自動佈局。我是否應該設置約束條件,然後調整視圖中的相關高度和位置?
@MarcoPace或,使用自動佈局,旨在解決這個問題。 – jrturton
@jrturton好,我沒有讀最後一句話。由於它不使用IB,我錯誤地認爲他不想使用它們。感謝您的回覆。 –
謝謝,在這個例子中,IB沒有用......主要是因爲這是頂層視圖,下面有一個複雜的視圖。如果你可以切換視圖以在IB內顯示/隱藏,而你在其他人身上工作......現在這將是有用的 – StuartM