截取UIPickerView

时间:2015-05-05 13:58:58

标签: ios objective-c

我使用以下代码截取我的观点的截图:

UIGraphicsBeginImageContextWithOptions(containerView.bounds.size, NO, [[UIScreen mainScreen] scale]);
[toController.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

它适用于大多数情况,但在视图包含UIPickerView

时会生成以下图像

image that is produced

这是我想要制作的图像。

the desired image

发生了什么,如何解决这个问题,任何想法?

全部谢谢!

编辑:请注意,这会在设备和模拟器上发生

1 个答案:

答案 0 :(得分:1)

我使用drawViewHierarchyInRect:

解决了这个问题
UIGraphicsBeginImageContextWithOptions(containerView.bounds.size, NO, [[UIScreen mainScreen] scale]);
[toController.view drawViewHierarchyInRect:containerView.bounds afterScreenUpdates:YES];
UIImage * image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();