UIGraphicsBeginImageContext
可以将视图转换为图像。但是如果一个table-view 比屏幕长,这个函数就不能显示整个table-view。
我怎样才能做到这一点?
UIGraphicsBeginImageContext
可以将视图转换为图像。但是如果一个table-view 比屏幕长,这个函数就不能显示整个table-view。
我怎样才能做到这一点?
请参阅此答案:https ://stackoverflow.com/a/5104559/254422
只需将 替换UIWebView
为UITableView
.
这将得到一个整体的形象UITableView
。
UIImage *image = nil;
CGRect oldFrame = self.tableView.frame;
[self.tableView setFrame:CGRectMake(0, 0, self.tableView.contentSize.width, self.tableView.contentSize.height)];
UIGraphicsBeginImageContext(self.tableView.contentSize); {
[self.tableView.layer renderInContext:UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();
}
UIGraphicsEndImageContext();
[self.tableView setFrame:oldFrame];