1、截图:
-(UIImage *)screenImageWithSize:(CGSize )imgSize{
UIGraphicsBeginImageContext(imgSize);
CGContextRef context = UIGraphicsGetCurrentContext();
AppDelegate * app = (AppDelegate *)[UIApplication sharedApplication].delegate; //获取app的appdelegate,便于取到当前的window用来截屏
[app.window.layer renderInContext:context];
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return img;
}
UIGraphicsBeginImageContext()方法会构建一个基于位图(bitmap)的图形context,并且这个context会成为当前context。然后通过renderInContext方法把 app.window.layer 渲染进当前的图形context。最后通过UIGraphicsGetImageFromCurrentImageContext()获取当前图形context上的图片,从而获取屏幕截图。
UIGraphicsBeginImageContext()方法传入唯一参