iOS tableview如何检查它是向上滚动还是向下滚动

我正在学习如何使用TableViews,并且想知道如何查看tableView是向上滚动还是向下滚动?我一直在尝试诸如此类的各种操作,但由于下面是针对滚动视图的操作,并且没有TableView,因此它没有用。任何建议都会很棒,因为我是新来的…

  func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {

if scrollView.panGestureRecognizer.translation(in: scrollView).y < 0 {

print("down")

} else {

print("up")

}

}

这就是我的tableView代码中的内容

func tableView(_ tableView:UITableView, numberOfRowsInSection section:Int) -> Int {

return Locations.count

}

func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {

if indexPath.row == self.Posts.count - 4 {

reloadTable(latmin: self.latmin,latmax: self.latmax,lonmin: self.lonmin,lonmax: self.lonmax,my_id: myID)

print("Load More")

}

}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

let cell = tableView.dequeueReusableCell(withIdentifier: "HomePageTVC", for: indexPath) as! NewCell

cell.post.text = Posts[indexPath.row]

cell.fullname.setTitle(FullName[indexPath.row],for: UIControlState.normal)

return cell

}

回答:

就像@maddy在您的问题评论中说的那样,您可以UITableView使用UIScrollViewDelegate和来检查是否正在滚动,此外,您可以同时使用scrollViewDidScrollscrollViewWillBeginDragging函数来检查其滚动到的方向

// we set a variable to hold the contentOffSet before scroll view scrolls

var lastContentOffset: CGFloat = 0

// this delegate is called when the scrollView (i.e your UITableView) will start scrolling

func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {

self.lastContentOffset = scrollView.contentOffset.y

}

// while scrolling this delegate is being called so you may now check which direction your scrollView is being scrolled to

func scrollViewDidScroll(_ scrollView: UIScrollView) {

if self.lastContentOffset < scrollView.contentOffset.y {

// did move up

} else if self.lastContentOffset > scrollView.contentOffset.y {

// did move down

} else {

// didn't move

}

}

:如果您已经对UIViewControllerwith

进行了子类化,UIScrollViewDelegate那么您就不需要对其进行子类化UIViewController

UITableViewDelegate因为UITableViewDelegate它已经是的子类。UIScrollViewDelegate

以上是 iOS tableview如何检查它是向上滚动还是向下滚动 的全部内容, 来源链接: utcz.com/qa/429553.html

回到顶部