无法使用UITabBarController与滑动侧菜单

时间:2016-04-29 07:22:24

标签: ios objective-c uitabbarcontroller swrevealviewcontroller

我试图将UITabBarController和Sliding Side Menu结合起来。

对于Sliding Side菜单,我正在使用SWRevealViewController

我成功创建了滑动菜单,但我无法包含 如何将UITabBarController与SWRevealViewController集成,还是可以通过其他方式将UITabBarController与滑动侧菜单结合使用?

1 个答案:

答案 0 :(得分:1)

好吧,您将标签栏控制器设置为显示视图控制器的前控制器,当然,当您显示后控制器时,标签栏控制器会向右移动!!。

选项A:

管理整合它。以下是执行此操作的步骤:

A。在故事板中添加新的UIViewController。

B. 从新添加的UIViewController中删除内容视图

C。确保在IB中为新添加的UIViewController选中“是否为初始视图控制器”。

D. 将新添加的UIViewController的自定义类设置为SWRevealViewController。

E. 将其连接到您打算成为后视图控制器的视图控制器 - 在IB中提供segue“sw_rear”标识符。这必须是揭示控制器segue类型。

F. 将其连接到UITabBarController - 在IB中提供segue“sw_front”标识符。这必须是揭示控制器segue类型。

选项B:

MainTabViewController *frontViewController = [[MainTabViewController alloc] init];
RearViewController *rearViewController = [[RearViewController alloc] init];

UINavigationController *frontNavigationController = [[UINavigationController alloc] initWithRootViewController:frontViewController];
UINavigationController *rearNavigationController = [[UINavigationController alloc] initWithRootViewController:rearViewController];

SWRevealViewController *revealController = [[SWRevealViewController alloc] initWithRearViewController:rearNavigationController frontViewController:frontNavigationController];
revealController.delegate = self;

self.viewController = revealController;
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];