【发布时间】:2011-06-30 11:53:03
【问题描述】:
我使用 UITableView 在每个表格视图单元格中显示 2 到 3 张图像作为缩略图。我在表格视图中显示的图像尺寸很大。如果我直接使用这些图像而不减小任何尺寸,那么如果我在 TableView 和其他视图控制器之间来回移动,tableview 可能会丢失一些图像。
所以,我想到了减小图像大小的大小缩减代码。下面给出的代码效果很好,之前的问题已修复。但是 tableview 失去了平滑滚动,因为减小尺寸的代码使用了大量的内存。每次显示新的 tableview 单元格时,它都会处理(减小大小)特定 tableview 单元格中的图像。
可能有一个简单的解决方案。提前致谢。
//大小缩减代码
CGSize newSize=CGSizeMake(_new_width, _new_height);
UIGraphicsBeginImageContext( newSize );
[sd._image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
scene_image_preview.image =newImage;
【问题讨论】:
-
Apple 提供了一个非常好的官方示例:developer.apple.com/iphone/library/samplecode/LazyTableImages/… 我想你会在那里找到正确的方法......
标签: iphone uitableview ios4 uiimage