作者热门文章
- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
这是AppDelegate中的didFinishLaunchingWithOptions方法。让我解释一下场景,我在我的应用程序中开发了像 facebook 这样的 sideMenu,但现在我必须根据屏幕(ViewController)更改 sideMenu 列表
这里的side Menu是SideMenuViewController,它是contain中的一个参数,最终成为window的rootViewController。
所以,最基本的问题是“如何更改成为 windows 的 rootViewController 的 Controller 或变量”
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
SideMenuViewController *leftMenuViewController = [[SideMenuViewController alloc] init];
self.container = [ContainerOfSideMenuByVeerViewController
containerWithCenterViewController:[self navigationController]
leftMenuViewController:leftMenuViewController];
self.window.rootViewController = self.container;
[self.window makeKeyAndVisible];
return YES;
}
如果任何程序员想了解更多代码或需求,我非常欢迎通过编辑我的代码或在评论中提供。
最佳答案
试试这个:
<YourAppDelegateClass> *app = [[UIApplication sharedApplication] delegate];
app.window.rootViewController = <YourRootViewController>;
不要忘记包含必要的 header (例如您的 AppDelegate),否则您将获得 CE。这个似乎有效:
关于ios - 如何从其他 ViewController 更改 AppDelegate 中的 RootViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17408171/
我是一名优秀的程序员,十分优秀!