TableView 的屏幕截图不仅适用于可见单元格,而且适用于所有可用单元格
Posted
技术标签:
【中文标题】TableView 的屏幕截图不仅适用于可见单元格,而且适用于所有可用单元格【英文标题】:Screen capture for TableView NOT only for visible cells but for all available cells 【发布时间】:2012-07-13 13:48:35 【问题描述】:我想为我的表格视图截取所有单元格的屏幕截图,而不仅仅是可见单元格。行数是动态的。
如果有 30 行,那么我希望在一个屏幕截图中显示所有 30 行。 我尝试使用 tableview 的总高度作为
self.tblView.contentSize.height
使用此代码,我可以获取所有单元格的屏幕,但除了可见单元格之外,屏幕的所有其他部分都是空白的。
我正在使用下面的代码截屏
- (UIImage *)captureView:(UIView *)view
CGRect screenRect = [[UIScreen mainScreen] bounds];
screenRect.size.height=self.tblView.contentSize.height;
UIGraphicsBeginImageContext(screenRect.size);
CGContextRef ctx = UIGraphicsGetCurrentContext();
[[UIColor blackColor] set];
CGContextFillRect(ctx, screenRect);
[view.layer renderInContext:ctx];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
感谢您的帮助。
【问题讨论】:
我认为这比只截屏更复杂,因为细胞没有被淹没。 @Alex Terente,有没有其他方法可以捕获所有单元格? 您可以在 CGContext 中绘制所有内容并从该上下文中获取图像。 【参考方案1】:“屏幕截图”是屏幕截图。除了显示的内容之外,您无法捕获任何内容。除了进行多次捕获之外,我没有看到任何解决方案,每次以编程方式将 tableview 滚动一个表格高度,然后合并图像。
【讨论】:
以上是关于TableView 的屏幕截图不仅适用于可见单元格,而且适用于所有可用单元格的主要内容,如果未能解决你的问题,请参考以下文章