Ios7 第二个UIScreen导致UIStoryboards出现问题
在我的应用程序代理中,我设置了另一个屏幕(用于airPlay) 当我创建第二个窗口并为其分配第二个屏幕并运行应用程序时,我的故事板中的TableView将变成黑色。就好像tableView没有正确渲染一样。我已将问题隔离到: self.HDTVwindow.screen=[[UIScreen screens]objectAtIndex:1] 其中HDTV窗口是我的airplay应用程序的第二个窗口。当我注释掉这段代码时,故事板运行良好,我的UITableView是漂亮的白色。我在appDelegate中创建了两个UIWindows,即使它们被分配到不同的屏幕,是否会混淆故事板 有关我的appDelegate,请参见下文Ios7 第二个UIScreen导致UIStoryboards出现问题,ios7,uistoryboard,multiple-monitors,uiscreen,Ios7,Uistoryboard,Multiple Monitors,Uiscreen,在我的应用程序代理中,我设置了另一个屏幕(用于airPlay) 当我创建第二个窗口并为其分配第二个屏幕并运行应用程序时,我的故事板中的TableView将变成黑色。就好像tableView没有正确渲染一样。我已将问题隔离到: self.HDTVwindow.screen=[[UIScreen screens]objectAtIndex:1] 其中HDTV窗口是我的airplay应用程序的第二个窗口。当我注释掉这段代码时,故事板运行良好,我的UITableView是漂亮的白色。我在appDeleg
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
if ([[UIScreen screens] count]>1)
{
CGRect frame = [[UIScreen screens]objectAtIndex:1].bounds;
self.HDTVwindow = [[UIWindow alloc] initWithFrame:frame];
UIImage* astonLogo=[UIImage imageNamed:@"AstonUni720p.png"];
UIImageView* astonLogoView=[[UIImageView alloc] initWithImage:astonLogo];
astonLogoView.frame=frame;
[self.HDTVwindow addSubview:astonLogoView];
self.HDTVwindow.hidden = NO;
self.HDTVwindow.screen=[[UIScreen screens] objectAtIndex:1];//PROBLEM!!
}
// Set Up Storyboard
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *mainViewController = [storyboard instantiateInitialViewController];
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.rootViewController = mainViewController;
[self.window makeKeyAndVisible];
return YES;
}当使用iPad和苹果电视运行时,问题就迎刃而解了,似乎模拟器中有一个bug。将来,我将始终在真正的ios设备上运行我的代码