本文介绍了是否可以向tableView.contentOffset添加观察者?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要跟踪tableView.contentOffset.y是否可以向tableView.contentOffset添加观察者?

I need to track tableView.contentOffset.y Is it possible to add observer to tableView.contentOffset?

我认为这是不可能的,因为contentOffset不会继承NSObject类。

I think this is impossible because contentOffset doesn't inherit NSObject class.

还有其他解决方案吗?

Is any other solution?

推荐答案

UITableView UIScrollView 子类,因此您可以使用 UIScrollViewDelegate 方法 scrollViewDidScroll:在视图滚动时收到通知。检查该方法中 scrollView contentOffset

UITableView is a UIScrollView subclass so you can use the UIScrollViewDelegate method scrollViewDidScroll: to be notified when the view scrolled. Check the contentOffset of the scrollView in that method

contentOffset 是一个关键路径,因此您还可以使用KVO观察其变化

contentOffset is a key path, so you can also observe its changes using KVO

[self.tableView addObserver:self forKeyPath:@"contentOffset" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];

这篇关于是否可以向tableView.contentOffset添加观察者?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-16 19:57