你如何使用reloadData?
Posted
技术标签:
【中文标题】你如何使用reloadData?【英文标题】:How do you use reloadData? 【发布时间】:2010-11-20 23:30:35 【问题描述】:我在 IB 中设置了一个表格视图。它的委托/数据源连接到这个类:
@interface EditPlayersViewController : UIViewController <UITableViewDelegate, UITableViewDataSource>
我正在尝试调用 reloadData 方法。如果我使用 [self.view reloadData];它没有响应,我猜是因为技术上 self.view 不是 UITableView。我尝试添加以下内容:
IBOutlet UITableView *myTableView
然后我将它连接到我在 IB 中的表格视图。现在我的程序在视图加载时崩溃了。有什么想法吗?
【问题讨论】:
我不知道IB
是什么。这是什么语言/平台?你能把这些作为标签添加到这个问题中吗?
@Oded: superfell 现在添加了适当的标签。此外,IB = 界面生成器
你在哪里打电话self.myTableView reloadData
?
添加控制台中显示的崩溃行。这将有助于我们解决您的问题
【参考方案1】:
使EditPlayersViewController
成为UITableViewController
的子类,而不是UIViewController
。转储显式接口实现和 IBOutlet。然后,[self.tableView reloadData]
应该可以工作了。
【讨论】:
【参考方案2】:在控制台崩溃时观察控制台,然后打开调试器窗口。这两个窗口都会让您深入了解正在发生的事情。您尝试加载的数据可能是罪魁祸首,而不是 reloadData 调用。
【讨论】:
【参考方案3】:确保您已实现 UITableView
数据源方法。
在数据源方法中设置断点并尝试找出它崩溃的位置。
UITableViewDataSource_Protocol/Reference
【讨论】:
以上是关于你如何使用reloadData?的主要内容,如果未能解决你的问题,请参考以下文章
在 UICollectionView 中使用 reloadData 时如何从重新加载中排除标头
如何使用 Multipeer Connectivity (Swift 3) 在会话中通过 didReceiveData() 调用 table.reloadData
如何让 tableView.reloadData() 与核心数据正常工作?