UIImageView从存储在Core Data中的文件路径加载

时间:2012-03-04 23:55:17

标签: iphone objective-c ios uitableview uiimageview

我创建了自己的自定义表格视图单元格,包括数字,图像(缩略图)以及使用核心数据成功存储在sqlite数据库中的内容的描述。

下面的图片将更好地了解我目前在Interface Builder中拥有的内容: enter image description here

在之前的屏幕中,我正在存储用相机拍摄的图像的文件路径并将其保存到数据库中。我希望能够在Table View Cells上加载每个UIImageView,并为每个项目存储文件路径。

我尝试了以下不起作用:

UIImageView * thingPhotoView = (UIImageView *)
    [cell viewWithTag:11];

    NSString *path = thing.photo;
    thingPhotoView.image = [UIImage imageWithContentsOfFile:path];

1 个答案:

答案 0 :(得分:2)

我没有使用ALAssetLibrary,而是根据您正在使用的网址来判断。因此,您需要使用ALAssetsLibrary来访问文件

查看此处的文档ALAssetsLibrary

你可能想要这个方法

assetForURL:resultBlock:failureBlock:

可能看起来像这样

ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init];

[library assetForURL:thing.photo
     resultBlock:^(ALAsset *asset) {

         thingPhotoView.image = [UIImage imageWithCGImage:[asset thumbnail]];

     } failureBlock:^(NSError *error) {

       NSLog(@"Couldn't load asset %@ => %@", error, [error localizedDescription]);

     }];