嘿,我在试图解决这个问题时遇到了麻烦。 UITableView有一个方法[tableView reloadSections:(NSIndexSet *)withRowAnimation:(UITableViewRowAnimation)]现在根据Apple文档,这个方法接受一个NSIndexSet对象并重新加载索引集指定的任何部分。问题是即使我只在一个部分发送到这个方法,它最终重新加载所有部分,我不明白为什么会发生这种情况。任何帮助将不胜感激
答案 0 :(得分:0)
即使您尝试仅重新加载某个部分,也必须按部分提供填充过程:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"DetailViewCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier] autorelease];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
}
if (indexPath.section == 0){
//blablabla
cell.textLabel = blabla
}
else if (indexPath.section == 1){
///blablabla
cell.textLabel = blabla2
}
return cell;
}
...因为重新加载表(只是一个部分或整个表)将调用上面的方法