我有一个表格视图,其中我最初显示N个图像,并且随着用户向下滚动,当达到底部时,它会加载N个图像。现在,当用户触摸其中一个图像时,我使用模态渐变打开另一个视图,当用户返回时,表格保持在被触摸的单元格中(这是其中一个图像处于前N个加载图像中的情况)。但是当用户触摸任何随后加载的表格时,表格大小将恢复为原始大小(当加载前N个图像时)。UITableView更改内容大小
这只发生在表格大小上,而不是用于我使用的NSMutableArray表格的数据。我用下面的语句,甚至再出现这种情况:
// in viewDidLoad
[self.flowTable setDataSource:self];
[self.flowTable setDelegate:self];
// whenever new images are loaded
[self.flowTable reloadData];
当我试图检查正好出现这种情况这一点上,我发现,内容的大小没有改变,直到SEGUE被调用后。等到调用“viewDidAppear”方法时,表格的内容大小就会减小。任何想法为什么这可能会发生?
编辑
嗯,我从互联网上懒洋洋地加载,每当我加载更多的数据,该代码看起来是这样的:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
// connection finishes loading and the data is prepared to be updated
NSDictionary *flowArr = [NSJSONSerialization JSONObjectWithData:receivedData options:0 error:nil];
[self storeImageData: flowArr];
[self.flowTable reloadData];
}
- (void) storeImageData:(NSMutableArray *)arr
{
for(NSDictionary* data in arr)
{
// image data is stored as convenient and the NSMutableArray is updated as such
[self.imageData addObject: det];
}
}
发布更多代码。 – occulus
你使用什么数据结构?这有助于了解如何构建表视图的数据源。 –
@Zaph,是的,我使用的NSMutableArray的数量没有变化。只有表视图的大小。 –