我想嵌入一個UITableView到我的ViewController的主UIView是75%的屏幕寬度。理想情況下,這個UITableView也將嵌入到導航控制器中。另外,看起來我不能在iOS 5中使用UIContainerViews,因爲我遇到了錯誤「無法實例化名爲UIStoryboardEmbedSegueTemplate的類」(參見NSInvalidUnarchiveOperationException with ContainerView)。當UITableView的單元格不加載時的調試策略?
爲此,我在ViewController的主UIView中創建了一個UIView,它是屏幕寬度的75%。在那個UIView中,我放置了一個UINavigationBar和一個UITableView。我在ViewController的- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
函數中實例化了UITableViewController。一旦實例化,我通過self.tableViewController.tableView = self.tableView
將ViewController的UITableView連接到UITableViewController的UITableView。
一切似乎工作正常,除了我的UITableView沒有顯示任何單元格,即使我預加載數據。
我可以提供哪些附加數據來幫助診斷問題?我當然不會收到任何錯誤消息,並且數據源確實會收到數據,並且在數據源更新後我會撥打[self.tableView reloadData]
。
更新1
歸根結底,這是一種行爲,我想,除了不是多個網頁的意見,我想多表視圖每個嵌入在自己的導航控制器。我猜測,iOS版Chrome瀏覽器只需截取網頁截圖(?),因爲在滾動瀏覽標籤頁時未啓用交互功能,但如果您想保持交互,您將如何執行此操作?
UPDATE 2
的特定線似乎是CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]
其中static NSString *CellIdentifier = @"New Cell"
(及相應的原型的UITableViewCell在IB被定義)。但是,代碼似乎不會在這一行上崩潰;相反,斷點似乎開始(Thread 1: Breakpoint 1.1
),我沒有指定。此外,這隻發生在我的iOS設備上進行測試時。當通過iOS模擬器測試時,一切正常。
我已經完成了所有這些,除了我將我的dataSource委託給主ViewController,因爲我認爲這是活動視圖控制器以及接收相關觸摸事件的控制器,例如,,我添加了一個加UIBarButtonItem用於向列表添加新條目。 dataSource必須是內部的嗎? –
我應該複製一遍我的整個代碼嗎? StackOverflow似乎並沒有被設計爲這樣做(至少)。 –
的確,你不應該編碼轉儲。輸入中斷點和日誌語句 - 縮小問題範圍併發布代碼。 – Mundi