3

I am opening a UITabBarController with MMDrawerController on the left side. So from my delegate didFinishLaunchingWithOptions I am making a MMDrawerController with centerNav is a TabBarController and leftNav is a ViewController with Navigation controller. So as expected the tabbar is coming with the mmdrawer but there is a black gap on top of the LandingTabBarController.If I open the LandingTabBarController directly then it is coming from the top. Whats going wrong?

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    LandingTabBarController *landingTabBarController = [[LandingTabBarController alloc]initWithManagedObjectContext:self.managedObjectContext];
    UIViewController * drawerNavController = [storyboard instantiateViewControllerWithIdentifier:@"DrawerViewController"];

    UINavigationController *centerNav = [[UINavigationController alloc]initWithRootViewController:landingTabBarController];

    UINavigationController *leftNav = [[UINavigationController alloc]initWithRootViewController:drawerNavController];


    centerNav.navigationBar.barStyle = UIStatusBarStyleLightContent;
    leftNav.navigationBar.barStyle = UIStatusBarStyleLightContent;
    _drawerController = [[MMDrawerController alloc] initWithCenterViewController:centerNav leftDrawerViewController:leftNav];

    _drawerController.openDrawerGestureModeMask = MMOpenDrawerGestureModePanningCenterView;
    _drawerController.closeDrawerGestureModeMask = MMCloseDrawerGestureModePanningCenterView;
    _drawerController.showsShadow = NO;
    //[_drawerController setDrawerVisualStateBlock:[MMDrawerVisualState slideVisualStateBlock]];
    [_drawerController setDrawerVisualStateBlock:MMDrawerSideNone];
    self.window.rootViewController = _drawerController;
   [self.window makeKeyAndVisible];
    return YES;
}

This is my LandingTabBarController viewDidLoad

- (void)viewDidLoad {
    [super viewDidLoad];
    NSMutableArray *tabViewControllers = [[NSMutableArray alloc] init];
    UIViewController *firstViewController = [[UIViewController alloc]init];
    [firstViewController.view setBackgroundColor:[UIColor redColor]];

    UIViewController *secondViewController = [[UIViewController alloc]init];
    [secondViewController.view setBackgroundColor:[UIColor greenColor]];

    [tabViewControllers addObject:firstViewController];
    [tabViewControllers addObject:secondViewController];
    [self setViewControllers:tabViewControllers];

    firstViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"one" image:[UIImage imageNamed:@"icon_feed"] tag:1];
    secondViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"two" image:[UIImage imageNamed:@"icon_apps"] tag:2]; 
}

enter image description here

Screenshot of the debugger

enter image description here

Kousik
  • 21,485
  • 7
  • 36
  • 59

0 Answers0