2010-04-13 67 views
1

我用一個TabBar控制多個視圖的應用程序。在一個視圖中,我控制到不同服務器的連接。每個服務器都提供了一組不同的項目。 我將這些項目顯示在另一個視圖上的UITableView中。iPhone:UITableView在改變它顯示的數據之後變得不可見

問題是,第一次tableview顯示OK,但如果我回去查看第一個和更改服務器,從而更改應顯示在tableview中的項目列表,由於某種原因,tableview變得不可見。如果我在屏幕上點擊屏幕,它會再次顯示。

我創建這樣

UITableView * aTableView = [[UITableView alloc] initWithFrame:CGRectMake(X,Y,Width,Height) style:UITableViewStyleGrouped]; 

    [[self view] addSubview:aTableView]; 

    aTableView.dataSource = self; 

伊夫試着撥打reloadDatasetNeedsDisplay在主持這個tableview中,但沒有成功UIViewControllerviewWillAppear表視圖。

有什麼建議嗎?

感謝

+0

你可以發佈一些更多的代碼,以便我們可以獲取上下文嗎? – Tomen 2010-04-13 14:21:53

回答

0

我不知道這將解決您的問題或沒有,但你缺少

aTableView.delegate = self; 

,或者你已經在這裏不糊

0

我猜想,這個問題是tableview的數據源沒有提供數據,在切換服務器後第一次重新加載表。如果數據源不提供任何行,則tableview將顯示爲完全空白。這聽起來像你的問題。

我會查看切換服務器的代碼以及tableview:cellForRowAtIndexPath:在切換服務器後,在服務器切換後立即查看數據源提供的數據後,在其中設置斷點/日誌以激活。我想你會發現表沒有數據。當你觸摸它時,表格強制更新,到那時,數據已經到達。

相關問題