我的情况是这样的,我想以编程方式将当前视图的打印屏幕显示给用户,并将其保存到相册中。问题是我不希望层次结构中的所有视图都可见。我的计划是:
问题在于我坚持第一点。由于UIView
未实现NSCopying
协议,因此无法对视图层次结构进行深层复制。我尝试了归档和取消归档视图,但这只能在dektop上使用。
我认为有两种选择:
a)在所有视图和子视图上实现NSCopying协议。
b)淡化覆盖整个屏幕的白色视图(有点像手动打印屏幕时的闪光效果),在那一刻我隐藏了我想要的视图。
是否有其他方法可以解决我错过的这个问题?
编辑:
UIGraphicsBeginImageContext([[wordManager mainWorkViewController] view].frame.size);
[[[[wordManager mainWorkViewController] view] layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
祝你好运 // Abeansits
答案 0 :(得分:0)
所以,遗憾的是,没有人能够就此事提供任何帮助。 我是如何解决这个问题的:
我在打印屏幕中删除了我不想要的元素。我使用动画做到这一点,所以没有图形闪烁。最后看起来很不错,糟透了我从来没有解决原来的问题。
如果有任何人找到,请发布修补程序。 最好的问候
// Abeansits