我正在尝试让我的应用程序截取视图的截图(表格视图)。这是我用来执行此操作的代码:
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
UIGraphicsBeginImageContextWithOptions(self.tableView.frame.size, NO, [UIScreen mainScreen].scale); //retina display
else
UIGraphicsBeginImageContext(self.tableView.frame.size);
[self.tableView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
这样可行,但仅当表格视图滚动到最顶部时,如果不是,则图像为黑色。我找到的唯一解决方案是捕获整个表视图。我只需要可见部分。我该怎么做?
答案 0 :(得分:3)
通过将self.tableView.layer更改为self.tableView.superview.layer来解决。