2013-10-10 71 views
1

我想在UIViewController裏面設置一個UITableView。我這樣做是因爲它允許我使用保存和取消按鈕添加頂部欄。我正在使用storyboard和靜態單元格爲tableview建模以獲取用戶的輸入(想想Apple的日曆應用程序中的創建新事件)。我有Xcode中的視圖,但在手機或模擬器上運行時,tableview不顯示。這是在Xcode中簡單的觀點:UIViewController裏面的UITableView不顯示

enter image description here

這是運行它時,它是如何顯示:

enter image description here

我讀過有關添加代表和設置數據源和這樣的,但實際上這只是靜態單元格與文本字段,沒有數據被加載。爲什麼會發生這種情況以及可以採取哪些措施來解決問題?謝謝!

+1

看起來你有'UITableViewDelegate'而不是'UITableViewDataSource'。我不知道這是否是問題,但你應該修復它。順便說一下,如果將視圖嵌入到「UINavigationController」中,則可以輕鬆地將條形圖項添加到「UITableViewController」中。如果你打算使用委託和數據源方法,不要忘記設置你的委託和數據源。 –

+0

很好,謝謝。這並不是問題所在,但是通過調整很多不同的東西並更改值來嘗試調試,我可能不會發現這一點。雖然,解決這個問題並將其更改爲UITableViewDataSource會提示我添加cellForRowAtIndexPath和numberOfRowsInSection方法。 – Made2k

+0

您可以在故事板中顯示視圖層次結構的快照嗎? – Unheilig

回答

0

我最終以不同的方式思考這個問題。我想我遇到的問題是我想要導航控制器提供的所有功能,但是我需要它作爲控制器的基礎,也就是說不需要回頭。我在想這樣做的唯一方法是創建一個UIViewController並在那裏添加表視圖等,但我想到的僅僅是創建一個新的導航控制器,現在這個視圖顯示爲根視圖像這樣:

enter image description here

我不知道這是不是最好的做法,但希望它可以幫助別人,如果他們有這個問題。

+1

您是否從我的評論中獲得了這個想法?如果不是,我失敗了。 :) –

+0

@MarcusAdams我認爲我們在同一個思路上,但是我沒有看到你的編輯,直到我嘗試了這個。然而,回過頭來改變你評論中的一些內容,讓我想起了它,所以是的,我從你那裏得到了它,哈哈。 – Made2k

2

@ Made2k它看起來像你找到了解決辦法,但對於其他人誰遇到這種用同樣的問題,注意你只能使用一個UITableView用的UITableViewController內靜態細胞。這不是一個有據可查的事實,但顯然只有UITableViewController知道如何處理靜態單元格的佈局,而常規的UIViewController只需要實現UITableViewDelegateUITableViewDataSource協議以處理以編程方式添加的UITableView中的內容顯示通過Storyboard/Nib。

希望這可以節省一些人的時間。 @ Made2k的解決方案很好,但確實讓故事板不必要地繁忙。如果您不需要需要以使用UIViewController,那麼只需在常規的UITableViewController之內完成您的工作,並節省您的頭痛。

1

如果你想使用一個UIViewController你必須做出的ViewController數據源的UITableView和TableView中的委託,然後實現方法

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

在靜態表的情況下,在cellForRowAtIndexPath你會返回靜態單元格的出口。對於詳細的描述看看這個答案: https://stackoverflow.com/a/19110821/3110536

0

男人,下面的哈克真的有用! 你應該試試看!
在我的要求中,我想在靜態單元格中添加按鈕!以及切換的TableView

[self.tableView setHidden:YES/NO]; 

,並刷新它的知名度與新的數據

[self.tableView reloadData]; 

和這麼多的事情是可能做的那樣!

https://stackoverflow.com/a/19110821/1752988

希望上面的鏈接會幫助你! (Y)