Parcourir la source

Add Refreshing Revoke

MJ Lee il y a 11 ans
Parent
commit
60f89e99a0

+ 1 - 1
MJRefreshExample/MJRefreshExample.xcodeproj/project.xcworkspace/xcshareddata/MJRefreshExample.xccheckout

@@ -5,7 +5,7 @@
 	<key>IDESourceControlProjectFavoriteDictionaryKey</key>
 	<false/>
 	<key>IDESourceControlProjectIdentifier</key>
-	<string>4C304636-6729-409C-ABDA-94EEA974AB06</string>
+	<string>40890427-7F66-493F-92C3-9C4EFE946E5F</string>
 	<key>IDESourceControlProjectName</key>
 	<string>MJRefreshExample</string>
 	<key>IDESourceControlProjectOriginsDictionary</key>

BIN
MJRefreshExample/MJRefreshExample.xcodeproj/project.xcworkspace/xcuserdata/mj.xcuserdatad/UserInterfaceState.xcuserstate


+ 16 - 5
MJRefreshExample/MJRefreshExample/MJRefresh/MJRefreshBaseView.m

@@ -132,12 +132,23 @@ - (BOOL)isRefreshing
 #pragma mark 开始刷新
 - (void)beginRefreshing
 {
-    if (self.window) {
-        self.state = MJRefreshStateRefreshing;
+    if (self.state == MJRefreshStateRefreshing) {
+        // 回调
+        if ([self.beginRefreshingTaget respondsToSelector:self.beginRefreshingAction]) {
+            objc_msgSend(self.beginRefreshingTaget, self.beginRefreshingAction, self);
+        }
+        
+        if (self.beginRefreshingCallback) {
+            self.beginRefreshingCallback();
+        }
     } else {
-#warning 不能调用set方法
-        _state = MJRefreshStateWillRefreshing;
-        [super setNeedsDisplay];
+        if (self.window) {
+            self.state = MJRefreshStateRefreshing;
+        } else {
+    #warning 不能调用set方法
+            _state = MJRefreshStateWillRefreshing;
+            [super setNeedsDisplay];
+        }
     }
 }