簡體   English   中英

重新加載UITableView在IOS5中不起作用

[英]Reload UITableView not functioning in IOS5

UITableview reloadData函數未調用cellforRowAtIndexPath方法。 以下是我嘗試過的事情:

  1. 調用[self.myTableView reloadData];
  2. 也可以在ViewWillAppear上調用reloadData方法。
  3. 書面self.myTableView.delegate=self; self.myTableView.datasource=self也是。
  4. 我也使用NSLog進行了測試,以正確更新行數。
  5. 數據源和委托在情節提要中連接。

您的視圖是否符合UITableViewDelegateUITableViewDatasource

並且至少在那些協議中實現了所有必需的方法嗎? 此外,還有沒有必要說self.myTableView ,你可以只說myTableView如果你正在使用的類里面。

聽起來很傻,但是您是否忘記保存情節提要? 我已經不止一次這樣做了。

我想您尚未在.h文件中聲明委托。

例。

@interface ClassName:UIViewController <UITableViewDelegate> 

您實現了該方法嗎?

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1; //Return the number of sections you want
}

容易忘記,因為默認情況下它返回0。

如果您不這樣做,則tableview會認為它沒有任何部分,也不會要求任何行。

確保設置表視圖的委托:

tableView.delegate = _an_object_that_conforms_to_UITableViewDelegate_;

通常,這是在其中聲明了表格視圖的視圖控制器,因此您將具有:

tableView.delegate = self;

只要確保包含表視圖並充當其委托的視圖控制器將自身聲明為UITableViewDelegate:

@class MyViewController <UITableViewDelegate> {

  UITableView *tableView;
  ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM