【发布时间】:2013-07-25 03:46:57
【问题描述】:
我的应用基于LoginView 和SecondView。我将在登录后显示 SecondView。
我不想在LoginView 上创建MFSideMenu。我想在SecondView 中使用MFSideMenu。我正在尝试在我的AppDelegate.m 中做到这一点:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]];
UIViewController *baseViewApp = [storyboard instantiateViewControllerWithIdentifier:@"MFSideMenuContainerViewController"];
MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)baseViewApp.view.window.rootViewController;
//MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)self.window.rootViewController;
UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"navigationController"];
UIViewController *leftSideMenuViewController = [storyboard instantiateViewControllerWithIdentifier:@"leftSideMenuViewController"];
UIViewController *rightSideMenuViewController = [storyboard instantiateViewControllerWithIdentifier:@"rightSideMenuViewController"];
[container setLeftMenuViewController:leftSideMenuViewController];
[container setRightMenuViewController:rightSideMenuViewController];
[container setCenterViewController:navigationController];
return YES;
}
在上图中,我展示了来自 SideMenuContainerView 的 StoryBoard 属性(我想在其中加载 MFSideMenu):
http://santoro.co/ios_deve.png
当我使用初始 ViewController 开始构建我的应用程序时,MFSideMenu 正在工作。
我的SecondView 和这行:
MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)self.window.rootViewController;
但是当我尝试这个时:
UIViewController *baseViewApp = [storyboard instantiateViewControllerWithIdentifier:@"MFSideMenuContainerViewController"];
MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)baseViewApp.view.window.rootViewController;
MFSideMenu 不起作用。
【问题讨论】:
-
在appDelegate中编写的代码,你必须在登录按钮的点击事件中编写该代码。
标签: ios objective-c mfslidemenu