我有一个 IOS 应用程序,它使用 RestKit 将 json 格式的数据从服务器拉到 CoreData 实体中。数据中的属性之一是与特定文章关联的图像的 URL。我正在尝试将该图像加载到我的 collectionViewController 中。这是我一直在尝试但没有成功的方法。
从内部
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
我正在尝试这个
NSManagedObject *object = [self.fetchedResultsController objectAtIndexPath:indexPath];
NSURL *photoURL = [object valueForKey:@"imageUrl"];
NSData *photoData = [NSData dataWithContentsOfURL:photoURL];
cell.cellimg = [[UIImage alloc] initWithData:photoData];
[cell.title setText:[object valueForKey:@"title"]];
如果我注释掉抓取和加载图像的尝试,则视图会很好地加载默认图像和从 json 数据接收到的文章标题。基于此,我知道一切正常。
我还确定*photoData
正在分配正确的 URL。但是每次遇到该NSData
行时,控制台都会打印出“ -[__NSCFString isFileURL]: unrecognized selector sent to instance.... ”
老实说,我不知道这是否是正确的方法,或者它是否会起作用。我对此很陌生,所以任何帮助都会很棒。鉴于我是新手,一些小代码示例确实会有所帮助,并解释解决此问题的正确方法。
以防万一这是我定义的头文件*cellimg
和*title
#import <UIKit/UIKit.h>
@interface GlobismNewsCollectionViewCell : UICollectionViewCell
@property (strong, nonatomic) IBOutlet UIImage *cellimg;
@property (weak, nonatomic) IBOutlet UILabel *title;
@property (weak, nonatomic) NSURL *imageUrl;
@end