Commit 86042aaf authored by Steven杜宇's avatar Steven杜宇

// 待完善清单

parent d88bae53
...@@ -185,7 +185,9 @@ class YHMyFileListViewController: YHBaseViewController { ...@@ -185,7 +185,9 @@ class YHMyFileListViewController: YHBaseViewController {
override func viewDidLayoutSubviews() { override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews() super.viewDidLayoutSubviews()
self.tableView.contentSize = self.fakeTableView.contentSize if self.tableView.contentSize != self.fakeTableView.contentSize {
self.tableView.contentSize = self.fakeTableView.contentSize
}
} }
override func viewDidLoad() { override func viewDidLoad() {
...@@ -257,7 +259,9 @@ class YHMyFileListViewController: YHBaseViewController { ...@@ -257,7 +259,9 @@ class YHMyFileListViewController: YHBaseViewController {
// 自定义布局contentSize计算不准导致setContentOffset失效故采用此方法 // 自定义布局contentSize计算不准导致setContentOffset失效故采用此方法
// fakeTableView 设计目的 1、每次刷新数据自动滚动到底部才能算完contentSize 2、scrollToRow后更正偏移会有抖动 // fakeTableView 设计目的 1、每次刷新数据自动滚动到底部才能算完contentSize 2、scrollToRow后更正偏移会有抖动
printLog("fakeTableView.contentSize \(self.fakeTableView.contentSize)") printLog("fakeTableView.contentSize \(self.fakeTableView.contentSize)")
self.tableView.contentSize = self.fakeTableView.contentSize if self.tableView.contentSize != self.fakeTableView.contentSize {
self.tableView.contentSize = self.fakeTableView.contentSize
}
self.fakeTableView.scrollToRow(at: IndexPath(row: 0, section: section), at: .top, animated: false) self.fakeTableView.scrollToRow(at: IndexPath(row: 0, section: section), at: .top, animated: false)
...@@ -442,29 +446,37 @@ extension YHMyFileListViewController { ...@@ -442,29 +446,37 @@ extension YHMyFileListViewController {
@objc func clickSaveBtn() { @objc func clickSaveBtn() {
YHHUD.show(.progress(message: "正在生成图片")) YHHUD.show(.progress(message: "正在生成图片"))
if self.tableView.contentSize != self.fakeTableView.contentSize {
self.tableView.contentSize = self.fakeTableView.contentSize
}
self.tableView.snp.remakeConstraints { make in self.tableView.snp.remakeConstraints { make in
make.top.equalToSuperview() make.top.equalToSuperview()
make.left.right.equalToSuperview() make.left.right.equalToSuperview()
printLog("contentSize 000:\(self.tableView.contentSize.height)")
make.height.equalTo(self.tableView.contentSize.height) make.height.equalTo(self.tableView.contentSize.height)
} }
self.tableView.setNeedsLayout()
self.tableView.layoutIfNeeded()
let originY = self.tableView.contentOffset.y let originY = self.tableView.contentOffset.y
TYSnapshotScroll.screenSnapshot(self.tableView) { TYSnapshotScroll.screenSnapshot(self.tableView) {
[weak self] image in [weak self] image in
YHHUD.hide() YHHUD.hide()
guard let self = self else { return } guard let self = self else { return }
self.tableView.setContentOffset(CGPoint(x: 0, y: originY), animated: false)
self.tableView.snp.remakeConstraints { make in self.tableView.snp.remakeConstraints { make in
make.top.equalToSuperview() make.top.equalToSuperview()
make.left.right.equalToSuperview() make.left.right.equalToSuperview()
make.bottom.equalTo(self.bottomView.snp.top) make.bottom.equalTo(self.bottomView.snp.top)
} }
self.tableView.setNeedsLayout()
self.tableView.layoutIfNeeded()
if let img = image { if let img = image {
// 裁剪 // 裁剪
let targetFrame = CGRectMake(0, k_Height_NavigationtBarAndStatuBar-30, img.size.width, img.size.height-k_Height_NavigationtBarAndStatuBar) let targetFrame = CGRectMake(0, k_Height_NavigationtBarAndStatuBar-30, img.size.width, img.size.height-k_Height_NavigationtBarAndStatuBar+30)
let croppedImage = img.cropped(to: targetFrame) let croppedImage = img.cropped(to: targetFrame)
self.saveImage(croppedImage) self.saveImage(croppedImage)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.4, execute: {
self.tableView.setContentOffset(CGPoint(x: 0, y: originY), animated: false)
})
} else { } else {
YHHUD.flash(message: "生成图片失败") YHHUD.flash(message: "生成图片失败")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment