IOS控件缺陷之UIActionSheet引起崩溃(IOS 7)

一、主要问题:UIActionSheet 的delegate是assign的。如果delegate先于ActionSheet释放。则会引起程序崩溃。

二、次要问题:在ViewDidLoad时调起UIActionSheet,也会引起崩溃,这个崩溃系统给的提示很充分,所以是次要问题。

(这两个情况都只在IOS7上发生)正确和错误示例请下载示例程序:TestActionSheetBug.zip

 

盗个图做ActionSheet示意图:

ActionSheet 示意图
ActionSheet 示意图

如何通过ALAssert获取相册原图

1、前提你要确定ALAssert中带的是图片(因为也可能是视频)

[asset valueForProperty:ALAssetPropertyType] == ALAssetTypePhoto

2、获取原图:

- (UIImage *)getImage:(ALAsset *)asset {
     ALAssetRepresentation *representation = [asset defaultRepresentation];
     CGImageRef resolutionRef = [representation fullResolutionImage];
     UIImage *image = [UIImage imageWithCGImage:resolutionRef scale:1.0f orientation:(UIImageOrientation)representation.orientation];
     return image;
}