有很多关于如何将视图保存为图像的主题。他们都给出了相同的答案:
CGRect rect = [myView bounds];
UIGraphicsBeginImageContextWithOptions(rect.size,YES,[[UIScreen mainScreen] scale]);
CGContextRef context = UIGraphicsGetCurrentContext();
[myView.layer renderInContext:context];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
我的问题是我有一个包含多个包含图像的连接 imageViews 的视图。我想将该“持有人”视图保存为与其中的图像大小相对应的大小。因此,如果我并排有 2 张 400x400 的图像,我想保存 400x800 的图像,无论它们是否显示,比如说 30x60。
另外,上面的代码只捕获屏幕上的内容,而忽略了其余部分。例如,如果我想获得具有内容大小的整个滚动视图,这是不可能的。
有任何想法吗?