feat:The same VC use diffrent childVC

This commit is contained in:
pengfei.zhou
2019-11-23 19:44:46 +08:00
parent 76bceb084e
commit c666c7b81c
16 changed files with 124 additions and 19 deletions

View File

@@ -26,15 +26,9 @@ NS_ASSUME_NONNULL_BEGIN
@interface DoricAsyncResult <R> : NSObject
typedef void(^DoricResultCallback)(R);
typedef void(^DoricExceptionCallback)(NSException *);
typedef void(^DoricFinishCallback)(void);
@property(nonatomic, strong) DoricResultCallback resultCallback;
@property(nonatomic, strong) DoricExceptionCallback exceptionCallback;
@property(nonatomic, strong) DoricFinishCallback finishCallback;
@property(nonatomic, strong) void (^resultCallback)(R result);
@property(nonatomic, strong) void (^exceptionCallback)(NSException *e);
@property(nonatomic, strong) void (^finishCallback)(void);
- (void)setupResult:(R)result;

View File

@@ -56,24 +56,24 @@ - (id)getResult {
return self.result;
}
- (void)setResultCallback:(DoricResultCallback)callback {
- (void)setResultCallback:(void (^)(id))callback {
_resultCallback = callback;
if (self.result && ![self.result isKindOfClass:[NSException class]]) {
callback(self.result);
}
}
- (void)setExceptionCallback:(DoricExceptionCallback)exceptionCallback {
- (void)setExceptionCallback:(void (^)(NSException *))exceptionCallback {
_exceptionCallback = exceptionCallback;
if ([self.result isKindOfClass:[NSException class]]) {
exceptionCallback(self.result);
}
}
- (void)setFinishCallback:(DoricFinishCallback)callback {
_finishCallback = callback;
- (void)setFinishCallback:(void (^)(void))finishCallback {
_finishCallback = finishCallback;
if (self.result) {
callback();
finishCallback();
}
}