创建UIImage时出错

时间:2015-06-07 13:24:47

标签: ios xcode thumbnails

我正在尝试从地址簿导入联系人时创建缩略图。

我正在使用的方法在显示的行中崩溃。

@implementation UIImage (Thumbnail)
-(UIImage *) createThumbnailToFillSize:(CGSize)size
{
    CGSize mainImageSize = self.size;//LINE WHERE IT CRASHES

    UIImage *thumb;

控制台中的最后一行是:

self    UIImage *const  0x7fb2ee0994e0  0x00007fb2ee0994e0
size    CGSize  (width=142, height=142) 
mainImageSize   CGSize  (width=10, height=0)

我认为这个错误可能与height = 0有关但我不知道如何改变这个或者self.size真正指的是什么。

我正在使用的代码来自一本关于学习IOS的书。

有没有人看过这个或者可以建议如何修复?

编辑:

代码调用类别

// ...get permission to open contact, begin to extract contact info
     if (ABPersonHasImageData(addressBookRecord)) {
                CFDataRef imageData = ABPersonCopyImageData(addressBookRecord);

                UIImage *fullSizeImage = [UIImage imageWithData:(__bridge NSData *)imageData];

                CGFloat side = 71.f;
                side *= [[UIScreen mainScreen] scale];

                UIImage *thumbnail = [fullSizeImage createThumbnailToFillSize:CGSizeMake(side, side)];

                self.imageData = UIImageJPEGRepresentation(thumbnail, 1.f);

                CFRelease(imageData);
            }

1 个答案:

答案 0 :(得分:0)

在下面一行中尝试尺寸而不是 self.size

CGSize mainImageSize = self.size;//LINE WHERE IT CRASHES