簡體   English   中英

iOS的cellForRowAtIndexPath沒有被調用但是numberOfRowsInSection被調用並返回一個數字

[英]ios cellForRowAtIndexPath doesn't get called however numberOfRowsInSection gets called and returns a number

我的應用程序使用JASidePanels庫,並且使用情節提要設置了它們。 中心視圖是UITableView,左面板是我調用方法(通過按按鈕)的視圖

- (IBAction)reloadAllFilters:(UIButton *)sender{

MasterViewController *masterController = [self.storyboard instantiateViewControllerWithIdentifier:@"centerViewController"];
NSMutableArray *arrayOfFilterIds = [[NSMutableArray alloc] init];

// another code

masterController.filterIdsToDisplay = arrayOfFilterIds;
[masterController.tableView reloadData];

[self.sidePanelController toggleLeftPanel:self];

}

問題是,當應用程序啟動時,行數由數字返回,但是在我調用此方法后,行數為30,但看不到任何內容。

我認為問題在於我正在實例化一個新的masterController,因此無法獲得要顯示的實際表視圖? 還是我錯了? 你能幫我么?

是的,你是對的。 每次調用該方法時,都會創建一個新的主控制器

從UIStoryboard參考:

每次調用時,此方法都會創建指定視圖控制器的新實例。

您需要獲取現有的一個。

請像這樣將委托和數據源設置為您的表視圖...

  tableView.delegate = masterController;
  tableView.dataSource = masterController;

暫無
暫無

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

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