将整个UITableView渲染为图像!分享

时间:2018-12-15 04:32:48

标签: image tableview swift4 render

我找到了这段代码,但是它节省了很多内容,例如tableView的75%,即使屏幕外的行也是如此,但不是完整的表。我想知道是否有人理解为什么它不呈现完整表,或者如何更改以使其呈现完整表。还是其他将可靠地呈现整个表上和表外tableView的代码? 先感谢您。希望其他人可以使用。我在Swift 4中。如果需要,我可以发布图像(只是生成一张长表图像,而不是完整的表。)也许在表未完全加载之前就已经生成了表图像,这是对问题的猜测。我是新手。

这是我的代码:

 'Must declare the scalar variable "@Hash".'

1 个答案:

答案 0 :(得分:1)

那是我所拥有的。但是,你我解决了。这是我所做的: 添加了类变量:

var tableHeight: CGFloat = 0.0 

在viewWillAppear中添加:

override func viewWillAppear() { super.viewDidLoad() 
tableView.addObserver(self, forKeyPath: "contentSize", options: .new, context: nil) 

inviewWillDisappear:

tableView.removeObserver(self, forKeyPath: "contentSize")
super.viewWillDisappear(true)

然后在shareScreen()函数中进行更改(仅更改;高度:tableHeight:)

tableView.frame = CGRect(x: tableView.frame.origin.x, y: tableView.frame.origin.y, 
width: tableView.contentSize.width, height: tableHeight)

很棒!我得到了整个长桌图像:)如果可以,我可以发布完整的func吗?这是输出的完整长表:https://imgur.com/a/iIYvVaO happy happy