.H文件
@property (strong, nonatomic) LAClaimReport *claimReport;
.M文件
@interface LACreateReportViewController ()
{
NSArray *_thumbnails;
LAPhotoThumb *_lastSelectedPhoto;
}
_thumbnails = _claimReport.photos.allObjects;
if (_thumbnails.count >0)
{
_photosCaption.textColor = [UIColor colorWithRed:0/255.0 green:46/255.0 blue:91/255.0 alpha:1];
UIImageView *image = [[UIImageView alloc] initWithFrame:CGRectMake(30, 1838, 300, 600)];
NSLog(@"image:%@" , _thumbnails[0]);
[image setImage:(UIImage *) _thumbnails[0]]; // exception here.
}
NSInvalidArgumentException',原因:' - [LAPhoto尺寸]:无法识别的选择器发送到实例0xa76b720'
照片是LAClaimReport
类文件中的一列。关于尺寸我在这里缺少什么?请指导。
答案 0 :(得分:1)
_thumbnails
不包含UIImage
个实例,它包含其他类型的对象。但是,不包含足够的信息来说明它包含的对象类型。
size
是UIImage
上的一种方法,图像视图使用该方法来确定如何显示图像,_thumbnails
实际上没有任何对象实现该方法方法
您的NSLog(@"image:%@" , _thumbnails[0]);
应列出您尝试用作图片的班级类型。
答案 1 :(得分:0)
确保在_thumbnails数组中有UIImage类对象,我认为你在该数组中有LAPhoto类型的对象
id arrContent=_thumbnails[0];
if ([arrContent isKindOfClass:[LAPhoto Class]])
{
//read LAPhoto class and find a way to get the UIImage from LAPhoto Object
}
else if ([arrContent isKindOfClass:[UIImage class]])
{
[image setImage:(UIImage *) _thumbnails[0]];
}