Simplify functions until make server driven tab bar control

This commit is contained in:
Pfeil, Scott Robert 2019-01-23 15:53:20 -05:00
parent a170c54a41
commit f053399e8e
2 changed files with 5 additions and 43 deletions

View File

@ -25,10 +25,7 @@
- (nullable instancetype)initWithViewController:(nonnull UIViewController <MVMCoreViewControllerProtocol>*)viewController loadObject:(nullable MVMCoreLoadObject *)loadObject tabsInfo:(nonnull NSArray *)tabsInfo shoudEnableSwipeGestures:(BOOL)enableSwipeGestures;
// For client driven architecture
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <UIViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames loadObject:(nullable MVMCoreLoadObject *)loadObject tabsInfo:(nonnull NSArray *)tabsInfo;
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo;
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo shoudEnableSwipeGestures:(BOOL)enableSwipeGestures;
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo selectedIndex:(NSUInteger)selectedIndex shoudEnableSwipeGestures:(BOOL)enableSwipeGestures;
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <UIViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames loadObject:(nullable MVMCoreLoadObject *)loadObject tabsInfo:(nonnull NSArray *)tabsInfo selectedIndex:(NSUInteger)selectedIndex shoudEnableSwipeGestures:(BOOL)enableSwipeGestures;
// Returns the number of tabs
- (NSInteger)numberOfTabs;

View File

@ -71,13 +71,13 @@
return self;
}
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <UIViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames loadObject:(nullable MVMCoreLoadObject *)loadObject tabsInfo:(nonnull NSArray *)tabsInfo {
UIViewController <MVMCoreViewControllerProtocol>*viewController = [viewControllers firstObject];
if (self = [self initWithViewController:viewController loadObject:loadObject tabsInfo:tabsInfo]) {
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames loadObject:(nullable MVMCoreLoadObject *)loadObject tabsInfo:(nonnull NSArray *)tabsInfo selectedIndex:(NSUInteger)selectedIndex shoudEnableSwipeGestures:(BOOL)enableSwipeGestures {
UIViewController <MVMCoreViewControllerProtocol>*viewController = [viewControllers objectAtIndex:selectedIndex ofType:[UIViewController class]];
if (self = [self initWithViewController:viewController loadObject:loadObject tabsInfo:tabsInfo shoudEnableSwipeGestures:enableSwipeGestures]) {
self.viewControllers = [viewControllers mutableCopy];
self.tabNames = tabNames;
self.clientDriven = YES;
self.selectedIndex = 0;
self.selectedIndex = selectedIndex;
for (UIViewController *viewController in self.viewControllers) {
if ([viewController respondsToSelector:@selector(setManager:)]) {
((UIViewController <MVMCoreViewManagerViewControllerProtocol> *)viewController).manager = self;
@ -87,41 +87,6 @@
return self;
}
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo {
MFViewController *viewController = [viewControllers firstObject];
if (self = [self initWithViewController:viewController loadObject:viewController.loadObject tabsInfo:tabsInfo]) {
self.viewControllers = [viewControllers mutableCopy];
self.tabNames = tabNames;
self.clientDriven = YES;
self.selectedIndex = 0;
for (MFViewController *viewController in self.viewControllers) {
viewController.manager = self;
}
}
return self;
}
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController<MVMCoreViewControllerProtocol>*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo selectedIndex:(NSUInteger)selectedIndex shoudEnableSwipeGestures:(BOOL)enableSwipeGestures {
MFViewController *viewController = [viewControllers objectAtIndex:selectedIndex ofType:[MFViewController class]];
if (self = [self initWithViewController:viewController loadObject:viewController.loadObject tabsInfo:tabsInfo shoudEnableSwipeGestures:enableSwipeGestures]) {
self.viewControllers = [viewControllers mutableCopy];
self.tabNames = tabNames;
self.clientDriven = YES;
self.selectedIndex = selectedIndex;
for (MFViewController *viewController in self.viewControllers) {
viewController.manager = self;
}
}
return self;
}
- (nullable instancetype)initWithViewControllers:(nonnull NSArray <MFViewController*>*)viewControllers tabNames:(nonnull NSArray <NSString*>*)tabNames tabsInfo:(nonnull NSArray *)tabsInfo shoudEnableSwipeGestures:(BOOL)enableSwipeGestures {
if (self = [self initWithViewControllers:viewControllers tabNames:tabNames tabsInfo:tabsInfo]) {
self.shouldEnableSwipeGestures = enableSwipeGestures;
}
return self;
}
#pragma mark - Pass Through
- (BOOL)isMasterInitiallyAccessible {