我有一个包含部分标题的表格视图。我希望同时显示行内容和部分标题。目前,他们没有。我知道为什么会这样。我必须调用服务器以获取数据以填充行。当我这样做时,标题已经显示出来了。我的问题是如何让标题在行显示时显示自己?
如果重要的话,我正在使用 AFnetworking 进行网络通话。我正在使用 iOS 6.1,但我想支持 iOS 5(再次,如果重要的话)。
我有一个包含部分标题的表格视图。我希望同时显示行内容和部分标题。目前,他们没有。我知道为什么会这样。我必须调用服务器以获取数据以填充行。当我这样做时,标题已经显示出来了。我的问题是如何让标题在行显示时显示自己?
如果重要的话,我正在使用 AFnetworking 进行网络通话。我正在使用 iOS 6.1,但我想支持 iOS 5(再次,如果重要的话)。
您的委托方法需要考虑到数据是异步传入的。让我们假设您的数据模型由一组部分组成,数组中的每个元素都是一个包含标题和行数据数组的字典。你numberOfRowsInSection
看起来像这样:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [sectionsArray count];
}
因此,当sectionsArray
为空时,表格视图将知道有零个部分,并且不会显示任何内容。当你的异步数据进来时,你填充sectionsArray
然后调用[tableView reloadData]
. numberOfRowsInSection
将再次调用,这一次返回非零的部分数,并且表将自行填充。
如果您想使用像TLIndexPathTools这样的 3rd-party 库,所有这些都更容易设置。它可以自动将您的数据组织成部分,并提供一个标准化的数据模型,其中包含许多有助于实现委托方法的便利方法。尝试运行JSON示例项目并查看我对异步加载的评论