有的app中会需要有一个截屏的小功能,下面看看代码怎么写
给UIImage添加一个类目,写一个截屏的方法
/**
控件截屏
@param view 传入的View
@return 截屏图片
*/
+ (UIImage *)imageWithCaputureView:(UIView *)view
{
UIGraphicsBeginImageContextWithOptions(view.bounds.size, NO, 0);
CGContextRef ctx = UIGraphicsGetCurrentContext();
[view.layer renderInContext:ctx];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
然后在控制器里直接调用这个方法就行了,比如把截屏的图片写到桌面上
UIImage * imageNew = [UIImage imageWithCaputureView:self.view];
NSData * data = UIImageJPEGRepresentation(imageNew, 1);
[data writeToFile:@"/Users/mac/Desktop/image.png" atomically:YES];