[英]How to get the scroll position of a UITableView in real time
我需要實時獲取表格視圖的滾動位置。 我目前正在做的是:
func animationOffset() {
let offset = tableView.contentOffset.y
}
此功能連接到計時器
timer = NSTimer.scheduledTimerWithTimeInterval(0.2, target: self, selector: #selector(TimelineViewController.animationOffset), userInfo: nil, repeats: true)
如果用戶將手指從屏幕上抬起,此代碼可以正常工作,但如果他們不這樣做並繼續滾動,則偏移量將永遠不會更新,我的應用程序將無法正常運行。
你可以實施
func scrollViewDidScroll(scrollView: UIScrollView)
UITableViewDelegate
在 tableview 的滾動位置改變時調用,在那里你可以使用tableView.contentOffset.y
來獲取滾動位置。
小問題 - 在 Swift 3 中
func scrollViewDidScroll(_ scrollView: UIScrollView)
並且不會觸發以下內容:
func scrollViewDidScroll(scrollView: UIScrollView)
您可以使用以下函數獲取可見UITableView項的First和Last INDEX
每次滾動時,此功能也會自動更新(實時)
func scrollViewDidScroll(_ scrollView: UIScrollView){
//First Visible Item
print(tableView.indexPathsForVisibleRows?.first)
//Last visible item
print(tableView.indexPathsForVisibleRows?.last)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.