if (cell.tag == indexPath.row) {
[cell.imageView sd_setImageWithURL:[NSURL URLWithString:[enclosureUrlArray objectAtIndex:indexPath.row]]
placeholderImage:[UIImage imageNamed:@"placeholder"] options:indexPath.row == 0 ? SDWebImageRefreshCached : 0];
CGSize itemSize = CGSizeMake(50, 50);
UIGraphicsBeginImageContext(itemSize);
CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
[cell.imageView.layer setMasksToBounds:YES];
[cell.imageView.layer setCornerRadius:2.5f];
[cell.imageView.image drawInRect:imageRect];
cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
cell.imageView.autoresizingMask = UIViewAutoresizingNone;
}
return cell;
我只使用了SDWebImage。当我滚动我的UITableView
单元格被卡住时 - 它不能顺利滚动。我正在从Web服务中检索图像。你能告诉我为什么会这样吗?
答案 0 :(得分:0)
在您的代码中,滚动表格视图时会遇到问题,因为在下载图像后,您正在更改图像形状,例如应用Bounds,Radius。因此,图像形状每次都在变化。最好不要使用任何第三方库,而是使用苹果API。
以下代码可能有所帮助:
String wktString = "LINESTRING (0 0, 0 10)";
WKTReader reader = new WKTReader();
Geometry geom = reader.read(wktString);
答案 1 :(得分:0)
如果您希望表格视图能够平滑滚动,我建议您观看WWDC 2012的会话211,构建并发用户界面并在那里应用这些概念。这包含其内容被独立查询和呈现的单元格。
基本概念如下:
1.在tableView:cellForRowAtIndexPath中,实例化一个单元格
2.在相同的方法中,创建用于检索数据以填充单元格的操作并将其存储到字典中。对单元格的引用传递给操作。该操作有一个完成处理程序,用于填充单元格并从字典中删除操作
3.在从方法返回单元格之前,将操作添加到操作队列中
4.在tableView:didEndDisplayingCell:forRowAtIndexPath中,已取消已移出屏幕的单元格的操作将从字典中删除。