2012-06-22 36 views
0

我有一個TabBar應用程序(沒有故事板)與UIView在第一個窗口,有效地使用1/2的垂直空間。它具有僅屬於該視圖的背景顏色。我需要另一個視圖控制器在同一窗口中的新UIView?

我需要添加另一個UIView在下半部分,具有不同的背景顏色。

目前,只有一個視圖控制器;是否必須爲下部視圖添加另一個視圖控制器,以便具有可尋址性?還是有不同的方式來完成這一點?

+1

在新的UIView中將會發生什麼?您不需要每個視圖的控制器,但是如果它與上半部分的模型和功能完全無關,將它作爲單獨的控制器可能更有意義。 – jrturton

+0

上半部分包含日曆;當用戶點擊一天時,關於那一天的信息顯示在下半部分...日曆有橙色的日子(用戶要求的!)...下半部分包含關於那天的信息時間表,白色背景。 – SpokaneDude

+1

jrjurton是100%正確的,這是值得回答的。我將添加UILabel的,UIButton的等等。都是視圖本身,但由於它們通常與其容器視圖的模型和功能相關,所以使用相同的視圖控制器。 – Patrick

回答

2

這取決於控制是否執行任何「邏輯」。如果它只是一個普通的日曆顯示,我會使它成爲一個UIView子類,因爲UIViews就是這樣,意見。創建一個委託來傳遞'events'並處理UIViewController中的所有其他邏輯。這使得更好的重用性,因爲它創建了一個通用顯示。

如果它包含任何邏輯,如加載和處理數據,我會讓它成爲一個控制器。從你所說的話來看,這聽起來像是一個觀點會更適合imho。

+0

將第二個UIView附加到與日曆相同的控制器上會給我兩個日曆...我想我需要另一個控制器,對吧? – SpokaneDude

+0

我不明白你的意思。我以爲你想在UIViewController的視圖內看到一些日曆視圖。如果是這樣,您只需將您的CalendarView作爲子視圖添加到主視圖。 – Rengers

+0

對不起,讓我試着澄清它...我有一個UIView控制器有一個日曆的UIView。日曆佔據視圖的前半部分。我需要在日曆下添加另一個UIView。我無法使用日曆的控制器,因爲它給了我另一個日曆。我認爲我需要一個單獨的VC爲較低的UIView,對吧? – SpokaneDude

0

您不需要添加另一個ViewController來與現有視圖中的新UIView進行接口。

如果您使用的是界面生成器,只需從畫廊拖動一個新的視圖對象(這只是一個UIView)到適當的畫布和大小。要在現有視圖控制器中獲得對此視圖的引用,請調出助理編輯器並將其從新視圖拖動到視圖控制器實現文件(* .m)中。您現在可以從現有的視圖控制器中操作新的UIView。

相關問題