2012-02-24 40 views
0

我看過類似的問題,但沒有一個問題。單個UIViewController中的兩個UITableView問題

在一個UIViewController中,我有兩個UITableViews tableView1和tableView2(它是在一個UIScrollView中)。兩個表上的數據源和委託都被設置爲UIViewController,它實現了UITableViewDelegate和UITableViewDatasource協議。所述的UIViewController是一個的UITabBarController內本身如下:

  • 的UITabBarController
    • 的UIViewController
      • 的UITableView(tableView1)
      • 的UIScrollView
        • 的UITableView(tableView2)

內的tableView:的cellForRowAtIndexPath:我檢查哪個表,並相應地填充:

if (tableView == _tableView1) { 
    //do stuff for tableView1 
} else { 
    //do stuff for tableView2 
} 

當UIViewController中僅出現tableView1用數據填充。點擊另一個選項卡,然後再返回,最後填充tableView2。

如果tableView1的委託和數據源設置爲零,那麼tableView2永遠不會被填充。看起來tableView2只有在填充tableView1後纔會被填充。

任何人都可以幫忙嗎?

非常感謝。

+0

你是否在'tableView:numberOfRowsInSection:'和'numberOfSectionsInTableView:'中做同樣的檢查? – jonkroll 2012-02-24 17:50:35

+0

你累了嗎? 如果(的tableView == _tableView1){// 爲tableView1 做的東西}如果(的tableView == _tableView2)滾動視圖內 – pmk 2012-02-24 17:51:28

+1

表視圖{ //用於tableView2 做的東西}下一個到另一個表視圖?我爲一個不想使用該用戶界面... – jrtc27 2012-02-24 18:06:14

回答

0

在我的問題中,我聲明的iVars是_tableView1_tableView2。這些實際上是_indexTableView_tableView。將_tableView更改爲_gridTableView似乎解決了此問題。