我有prepareForSegue
将这样的图像传递给下一个viewController
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
WizardPreview *controller = [segue destinationViewController];
controller.myPicture = myPicture;
}
在viewWillAppear
呈现的viewController
上,我有类似这样的内容
CGImageRef imageRef = [self.myPicture CGImage];
结果是nil
奇怪的是,self.myPicture
不是零,但self.myPicture.CGImage
是。
有什么理由吗?
注意:myPicture
传递时不是nil,即使是viewWillAppear
,我也会测试,我看到self.myPicture
不是nil。
注意2:这是在iOS 8上运行的iOS 7上编译的代码。
答案 0 :(得分:1)
您还没有发布足够的代码来确定。最可能的三个选项是:
myPicture
方法中的nil
为prepareForSegure:sender:
WizardPreview
' myPicture
属性为weak
UIImage
没有CGImage
支持(例如,如果它由CIImage
支持)如果#3为真,您可以直接从CGImage
(sample code here)创建CIImage
。