UITableView异步加载图片+缓存
2012-06-06 13:57
435 查看
此为arc版本 如果不是arc项目,请手动添加"relese"
重新修改,加入sbjson库,刚才忘了加了!
1.将WQTableViewController.h和WQTableViewController.m拖入项目中
2.在自己的viewController中继承WQTableViewController并加入WQTableViewDelegate
例如:
#import "WQTableViewController.h"
@interfaceViewController : WQTableViewController<WQTableViewDelegate>
3.在自己的viewController.m中的- (void)viewDidLoad中配置参数如下:
wqTable=mytable ;//("mytable 为自己的table")
tableDataArray = myTableDataArray;//("myTableDataArray"为自己table显示数据的数组)
delegate=self;
4.在自己的viewController.m中加入code:
-(void)cellImageDidLoad:(NSIndexPath *)indexPath image:(UIImage *)image
{
UITableViewCell *cell = [wqTable cellForRowAtIndexPath:indexPath];
cell.imageView.image = image;
}
5.最后在
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 中图片的设置为
NSString*imageName = [[[tableDataArrayobjectAtIndex:indexPath.row] valueForKey:KidKey] stringByAppendingString:@".temp"];
NSString*imageDataPath = [NSHomeDirectory() stringByAppendingPathComponent:[@"Library/Caches/"stringByAppendingString:imageName]];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfFile:imageDataPath]];
if (image) {
cell.imageView.image = image;
}
else {
cell.imageView.image = [UIImage imageNamed:@"Placeholder.png"];
//placeholder为在未加载完成加载图片时显示的默认图片
}
注意:在WQTableViewController.h 有2个#define 参数 需要更具自己的实际情况修改
附件:
![](http://www.cocoachina.com/cms/uploads/allimg/120511/093KQ124-0.gif)
WQTableViewController.zip
论坛原帖地址:http://www.cocoachina.com/bbs/read.php?tid=102755
重新修改,加入sbjson库,刚才忘了加了!
1.将WQTableViewController.h和WQTableViewController.m拖入项目中
2.在自己的viewController中继承WQTableViewController并加入WQTableViewDelegate
例如:
#import "WQTableViewController.h"
@interfaceViewController : WQTableViewController<WQTableViewDelegate>
3.在自己的viewController.m中的- (void)viewDidLoad中配置参数如下:
wqTable=mytable ;//("mytable 为自己的table")
tableDataArray = myTableDataArray;//("myTableDataArray"为自己table显示数据的数组)
delegate=self;
4.在自己的viewController.m中加入code:
-(void)cellImageDidLoad:(NSIndexPath *)indexPath image:(UIImage *)image
{
UITableViewCell *cell = [wqTable cellForRowAtIndexPath:indexPath];
cell.imageView.image = image;
}
5.最后在
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 中图片的设置为
NSString*imageName = [[[tableDataArrayobjectAtIndex:indexPath.row] valueForKey:KidKey] stringByAppendingString:@".temp"];
NSString*imageDataPath = [NSHomeDirectory() stringByAppendingPathComponent:[@"Library/Caches/"stringByAppendingString:imageName]];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfFile:imageDataPath]];
if (image) {
cell.imageView.image = image;
}
else {
cell.imageView.image = [UIImage imageNamed:@"Placeholder.png"];
//placeholder为在未加载完成加载图片时显示的默认图片
}
注意:在WQTableViewController.h 有2个#define 参数 需要更具自己的实际情况修改
附件:
![](http://www.cocoachina.com/cms/uploads/allimg/120511/093KQ124-0.gif)
WQTableViewController.zip
论坛原帖地址:http://www.cocoachina.com/bbs/read.php?tid=102755
相关文章推荐
- UI_UITableView异步加载图片
- iOS常见问题之异步加载图片在UITableView里显示时的奇异的现象
- ios UITableView封装之下拉-上提-图片异步加载
- IOS中UITableView异步加载图片的实现
- ios UITableView 异步加载图片并防止错位
- iOS UITableView中异步加载图片 - 解决方案
- 图片的异步加载(双缓存)+ViewHolder
- iOS UItableview加载图片的时候的优化之lazy(懒加载)模式and异步加载模式
- [Android]异步加载图片,内存缓存,文件缓存,imageview显示图片时增加淡入淡出动画
- ListView GridView ViewPager 异步 加载网络图片 缓存到本地
- Android:ViewPager扩展的具体解释——导航ViewPagerIndicator(有图片缓存,异步加载图片)
- ios UITableView封装之下拉-上提-图片异步加载
- ios UITableView封装之下拉-上提-图片异步加载 .
- ios UITableView封装之下拉-上提-图片异步加载
- ios UITableView封装之下拉-上提-图片异步加载
- UITableView 实现异步加载图片之改进
- iPhone UITableView异步加载图片 (动态加载图片)
- ios UITableView封装之下拉-上提-图片异步加载 .
- ios UITableView 异步加载图片并防止错位
- ios UITableView封装之下拉-上提-图片异步加载