|
@@ -130,6 +130,12 @@ CGFloat const JLRefreshFooterHeight = 30;
|
|
|
|
|
|
|
|
- (void)scrollViewContentOffsetDidChange:(NSDictionary<NSKeyValueChangeKey,id> *)change {
|
|
- (void)scrollViewContentOffsetDidChange:(NSDictionary<NSKeyValueChangeKey,id> *)change {
|
|
|
|
|
|
|
|
|
|
+ CGPoint new = [[change objectForKey:NSKeyValueChangeNewKey] CGPointValue];
|
|
|
|
|
+ CGPoint old = [[change objectForKey:NSKeyValueChangeOldKey] CGPointValue];
|
|
|
|
|
+ if (new.y == old.y) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
[super scrollViewContentOffsetDidChange:change];
|
|
[super scrollViewContentOffsetDidChange:change];
|
|
|
|
|
|
|
|
CGFloat offsetY = self.scrollView.jl_offsetY + self.scrollView.jl_height;
|
|
CGFloat offsetY = self.scrollView.jl_offsetY + self.scrollView.jl_height;
|
|
@@ -147,7 +153,7 @@ CGFloat const JLRefreshFooterHeight = 30;
|
|
|
|
|
|
|
|
if (self.scrollView.jl_ContentHeight >= self.scrollView.jl_height) {
|
|
if (self.scrollView.jl_ContentHeight >= self.scrollView.jl_height) {
|
|
|
|
|
|
|
|
- if (self.state != JLRefreshStateRefreshing && self.jl_y >= self.scrollView.jl_height && offsetY > self.jl_y) {
|
|
|
|
|
|
|
+ if (self.state != JLRefreshStateRefreshing && self.jl_y >= self.scrollView.jl_height && offsetY > self.jl_y && new.y > old.y) {
|
|
|
// 触底就加载
|
|
// 触底就加载
|
|
|
self.state = JLRefreshStateRefreshing;
|
|
self.state = JLRefreshStateRefreshing;
|
|
|
}
|
|
}
|