2014-04-11 28 views
2

我有一個UIViewController,其上有兩個UIViews。在導航欄中,當按下一個按鈕時,顯示其中一個UIViews,當另一個按鈕被按下時,顯示另一個UIView。我想把一個UITableView放在其中一個視圖上。但是,UITableView需要UIViewController使用UITableViewDelegate和UITableViewDataSource。在爲包含UTTableView的UIView(子視圖)實現了這個功能後,當我點擊其他視圖(不包含表格)的按鈕時,會出現錯誤和應用程序訛誤。如何將UITableView添加到使用故事板的幾個子視圖之一

我假設(可能不正確),我的問題是,我試圖對兩個子視圖使用相同的UIViewController,但只有一個包含一個表。

問題1)是否可以做我上面描述的?意思是,如果我遇到問題,那麼某些東西沒有正確連接。

所以,我走了一條創建兩個單獨的UIViewControllers的路徑;每個視圖一個。不確定這是否是聰明的做法。現在,我只是尋求建議,以最好的方式來做到這一點。預先感謝您的幫助。

enter image description here

要什麼,我試圖做的更加清晰。當點擊欄上的第一個按鈕時,我希望將藍色視圖放置在粉紅色視圖所在的位置,並且我希望在單擊第二個按鈕時將黃色視圖放置在粉紅色視圖所在的位置。基本上粉紅色的視圖將永遠不會顯示,甚至可能不需要在UtilityViewController上。

+2

*「我沿着創建兩個單獨的UIViewControllers的路徑」*這是完全正確的。說一個視圖控制器是「ShowDogs」。假設其他視圖控制器是「ExoticCarClubSignUp」。這正是你如何做iOS應用程序。其中每一個都是UIViewController的子類。 (**注意:**很多時候,人們會稱它們爲「ShowDogsViewController」和「ExoticCarClubSignUpViewController」。對我來說這是浪費能源並導致全球變暖。我的意思是......「他們還能做什麼?」它是一個iOS應用程序......一切都是視圖控制器!)爲它而努力! – Fattie

+1

只是要清楚。當你點擊按鈕時,Apple會自動給你一個通用的「UIViewController」。你懂?可以說,這是一個相當糟糕的主意。 (請注意,在現實世界中,你永遠不會使用它)。他們應該做的是給你一個通用的「YourFunctionViewController」......然後你將編輯它爲「ShowDogsViewController」和「 ExoticCarClubSignUpViewController」。我希望這是有道理的! – Fattie

回答

2

將每個作爲一個UIViewController(或其子類)都是你想要做什麼的方法。 UITabBarController已經這樣做了:https://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarController_Class/Reference/Reference.html

+1

很棒的回答。實際上露西是這個貓,我首先鼓勵你不要使用UITabBarController * ..它可能有點柺杖。去吧! – Fattie

+0

@JoeBlow - 我不想使用UITabBarController。所以現在,我試圖找出如何將User SettingsView推入UtilityView並使用單獨的控制器。不像我想要的那樣直截了當。這看起來像我需要使用ContainerView。你怎麼看? – Patricia

+1

嗯,我想我不明白你在做什麼。是否有可能你正在尋找** addChildViewController **和相關的功能?請注意,正如我上面所說:*「我走了創建兩個單獨的UIViewControllers」**的路徑是正確的,你應該做什麼**。但我可能在這裏再也不瞭解你的計劃了。目前尚不清楚您是否希望表格視圖運行「INSIDE THE OTHER WINDOW」。所以你有一些看法(「顯示所有的狗」或其他),然後你想要一個「小桌子」出現(比如,在右上角)。也許你應該只發布應用程序的圖像。 – Fattie

相關問題