【发布时间】:2014-04-01 10:10:23
【问题描述】:
我在我的应用程序中使用了 2 个 UIWindows。在 AppDelegate 中,在方法 didFinishLaunchingWithOptions: 我只是有:
self.windowStartup = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.windowSplit = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
然后我将 self.windowSplit 设置为 splitViewController,并将 windowStartup 设置为 xib 作为其 rootViewController。 如果我从 didFinishLaunchingWithOptions: 中加载 windowSplit,则 SVProgressHUD 效果很好,但是如果我在 didFinishLaunchingWithOptions: 中加载 windowStartup,则调用:
[self.windowSplit makeKeyAndVisible];
稍后,SVProgressHUD 将无法工作。其他一切都按预期工作。我的愿望是让 SVProgressHUD 为第二个场景工作,但也要找出我做错了什么可能会影响其他任何事情。
关于更多信息,我采用这种方法的原因是我想使用标准拆分视图控制器,但是我想先加载启动视图,而不是只出现在 splitView 的顶部iPad。用户完成设置后,他们可以决定是否希望最初显示启动视图。
提前感谢您的帮助!
编辑: 这是我的启动代码:
Startup *controller = [[Startup alloc] initWithNibName:@"Startup" bundle:nil];
self.windowStartup.rootViewController = controller;
[self.windowStartup makeKeyAndVisible];
【问题讨论】:
-
如果将windowSplit设置为应用程序的根窗口并将windowStartup放在它上面会发生什么。
-
谢谢@nsuinteger - 我沿着这条路走了一点,发现如果 windowStartup 曾经显示过,那么 SVProgressHUD 将不起作用。所以,我无法在 windowStartup 上运行 SVProgressHUD,无论我是先加载还是第二次加载。如果我先加载,SVProgressHUD 只能在 splitView 上工作。所以我显然在启动时做错了。我将使用我的启动代码编辑问题
标签: ios objective-c uiwindow svprogresshud