我在UIScrollView中有一个比屏幕高得多的UIView。我的代码看起来像这样
UIView *contentView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, -500.0f, 320.0f, 2000.0f)];
[_scrollView addSubview:contentView];
我希望捕获contentView
的图像//Screen capture.
UIGraphicsBeginImageContextWithOptions(contentView.frame.size, NULL, 0.0f);
[self.view drawViewHierarchyInRect:contentView.bounds afterScreenUpdates:NO];
UIImage* viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
以上代码适用于模拟器,但不适用于实际设备(iPod 5th gen)
如果我捕获scrollView而不是contentView,它可以正常工作,但只会捕获屏幕上显示的内容。有什么想法吗?
答案 0 :(得分:0)
使用scrollView.contentOffset
。获取当前在屏幕上的视图框架。
答案 1 :(得分:0)
好吧,我认为这可能是不可能的,因为iOS不会提取屏幕内容以获得更高的性能和电池寿命。