为什么我会得到“No -renderInContext:find方法”警告?
我在-renderInContext得到一个编译器警告:
- (UIImage *) imageFromView:(UIView *)view { UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0); [view.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage * img = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return img; }
我在项目框架中有QuartzCore,代码工作。 我如何修复代码,使其停止给我警告?
我得到的确切警告是
warning: no '-renderInContext:' method found warning: (Messages without a matching method signature warning: will be assumed to return 'id' and accept warning: '...' as arguments.)
尝试将Quartz框架导入到您的应用程序中。
然后加,
#include <QuartzCore/QuartzCore.h>
到您的应用程序。
你的项目中是否有QuartzCore.framework?
我想这是因为CALayer
类头在QuartzCore框架中。
在Xcode中,在Frameworks组中,添加QuartzCore框架,它应该没问题。
然后, 在这里看到我的post ,如何在每个源文件中包含头文件。 现在不是用于Core Data,而是用于QuartzCore(用完全相同的方式)