我試圖向用戶顯示一個「這就是全部」的消息,如果用戶到達表視圖的底部,但不斷滾動,就像「你最新」消息鬆弛顯示在底部的聊天。但是,tableFooterView
可以在表格視圖的最底部看到,並且不會隱藏。這應該怎麼做?swift如何顯示無法看到的頁腳,除非在達到底部後再向上滾動?
回答
我使用此解決方案:
let test=UILabel(frame: CGRect(x: 0,y: tableView.contentSize.height+180, width: tableView.frame.width, height: 50))
test.text="That's all"
view.insertSubview(test, belowSubview: tableView)
你把這段代碼放在哪裏?我把它放在cellForRowAtIndexPath中,但我仍然無法在表格視圖底部看到標籤 –
關於ViewController的viewDidLoad方法 – omarzl
On viewDidLoad my tableView.contentSize.height = 0 –
添加footerview將不起作用,因爲tableview將調整其contentSize以顯示它。
您可以直接向UITableView添加子視圖,將其框架的origin.y設置爲大於contextSize.y。無論何時添加或刪除行,或添加或刪除節節或重新加載表,都必須重新調整視圖。
我面臨同樣的問題,上述方案並沒有爲我工作。
我結束了使用自動佈局約束。最初頁腳視圖的底部錨設置一個更大的constrant保持它看不見
然後使用開始滾動視圖代表的&結束拖動的方法來顯示&隱藏它
extension ViewController: UITableViewDelegate {
func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
guard let bottomAnchor = self.bottomAnchor else { return }
guard scrollView.contentSize.height > scrollView.frame.size.height else { return }
let heightOfInvisibleContent = (scrollView.contentSize.height - scrollView.frame.size.height)
print("height of invisible content: \(heightOfInvisibleContent), offset: \(scrollView.contentOffset.y)")
guard scrollView.contentOffset.y >= heightOfInvisibleContent else { return }
bottomAnchor.constant = moveUpConstant
UIView.animate(withDuration: 0.5) {
self.view.layoutIfNeeded()
}
}
func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
guard let bottomAnchor = self.bottomAnchor else { return }
bottomAnchor.constant = moveDownConstant
UIView.animate(withDuration: 0.5) {
self.view.layoutIfNeeded()
}
}
}
我分享了我的全樣本項目( FooterMessage)在我的回購https://github.com/ramjyroo/iOS-Expedition
- 1. 當您到達屏幕底部時,頁腳會動起來,但在向後滾動時無法向下動畫
- 2. 如何在顯示前頁面時自動滾動到底部
- 3. Web2py無法滾動到頁面底部
- 4. postBack後滾動到頁面的底部
- 5. 當用戶滾動頁面到頁面底部時,頁腳向上滑動
- 6. 如何堅持一個頁腳窗口的底部,只有當向上滾動將導致無法顯示
- 7. 滾動查看不滾動到底部
- 8. 滾動到頁面底部時向下滾動,並向上滾動時順利
- 9. 無法在網站上看到頁腳,也無法滾動查看
- 10. 頁腳一旦用戶滾動向上滑動到頁面底部 - 閃爍
- 11. MGWT iPhone iOS7上的滾動問題無法到達滾動內容的底部
- 12. 滾動到網頁底部
- 13. 滾動到頁面底部
- 14. 在滾動頁面底部顯示頁腳菜單
- 15. 如何在滾動到達頁面底部時隱藏元素?
- 16. 如何向下滾動頁面到底部(最後一頁)在硒webdriver
- 17. 頁腳不會顯示在TableView上,除非我滾動
- 18. 無法滾動到iScroll div的底部
- 19. HTML頁腳粘到瀏覽器的底部,除非滾動條需要
- 20. 無法使DIV達到頁面底部
- 21. jQuery的滾動回滾到頂部非常快,當你到達底部
- 22. 在將webview滾動到底部後顯示admob廣告
- 23. UIScrollView無法滾動到iOS 7底部
- 24. UITableView無法滾動到底部
- 25. UIScrollView - 無法滾動到底部
- 26. slickgrid無法滾動到底部
- 27. 我無法滾動到底部
- 28. 無法滾動到底部wpf
- 29. 無法滾動到移動頁面的絕對底部
- 30. 滾動到顯示後隱藏的div的底部
是你使用'TableViewData'源添加footerView? – Dhiru
@Dhiru我只是設置一個UILabel爲'self.tableView.tableFooterView' –