3

左側にMMDrawerControllerがある UITabBarController を開いています。したがって、私のデリゲートから、didFinishLaunchingWithOptionscenterNav を使用して MMDrawerController を作成しTabBarController 、leftNav をナビゲーション コントローラーを使用した ViewController にします。予想通り、タブバーが付属していますmmdrawerが、上に黒い隙間がありますLandingTabBarController。 LandingTabBarController を直接開くと、上から来ます。何がうまくいかないのですか?

- (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;
}

これは私の 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]; 
}

ここに画像の説明を入力

デバッガーのスクリーンショット

ここに画像の説明を入力

4

0 に答える 0