根据图像问题的 UITableview 单元格高度
Posted
技术标签:
【中文标题】根据图像问题的 UITableview 单元格高度【英文标题】:UITableview cell height as per Image issue 【发布时间】:2017-02-23 10:34:46 【问题描述】:我正在根据 UIImageView 高度做 UITableview 单元格高度(动态高度),目前它工作正常,但我的问题是 UITableview 滚动不顺畅或如果我快速滚动则无法正常工作
我认为问题是我正在重新加载 tableview 单元格中的行,所以 tableview 滚动不起作用任何人都可以告诉我任何关于这个问题的好建议吗?
我做了什么
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
// Create the cell...
[cell.myImageView setImageWithURL:[NSURL URLWithString:@"http://example.com/image.jpg"]
placeholderImage:[UIImage imageNamed:@"placeholder"]
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType)
if (image != nil)
[self.images insertObject:image atIndex:indexPath.row];
[tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:YES];
];
return cell;
根据图片设置高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
id image = [self.images objectAtIndex:indexPath.row];
if ([image isKindOfClass:[NSNull class]])
return defaultHeight;
else
return [image size].height + topPadding + bottomPadding;
【问题讨论】:
你为什么要重新加载你的 UITableViewCell?另外,您是否在使用某种网络库,例如 AFNetworking? 是的,我正在使用 AFNetworking 和 SDWebimage 我正在重新加载行,因为我需要根据 UIIMageview 高度 @KunalKShah 设置 uitableview 单元格高度 @MayankPatel 我最近检查过您正在使用第三方,它设法以异步方式下载。 @agent_stack 我没有图像问题,但我有单元格高度问题 对于表格的动态高度,在heightForRowAtIndexPath
中使用uitableviewautomaticdimension
,并在estimatedHeightForRowAtIndexPath
中写入一些预期的高度。
【参考方案1】:
试试这个
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath
return UITableViewAutomaticDimension;
和
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
UIImage *image = [self.images objectAtIndex: indexPath.row];
if (image)
return image.size.height + 5;
else
return 80.0; //default value......
【讨论】:
完全不相关的答案。以上是关于根据图像问题的 UITableview 单元格高度的主要内容,如果未能解决你的问题,请参考以下文章
如何在 UITableView 中使用 UIView 实现动态单元格高度和图像高度?
UITableView imageView 复用其他单元格的图片
Xcode UITableView 自定义单元格xib 图像高度