Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/97.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ios 7在ViewDidDisplay中显示警报视图会导致视图不显示_Ios_Objective C_Ios7 - Fatal编程技术网

ios 7在ViewDidDisplay中显示警报视图会导致视图不显示

ios 7在ViewDidDisplay中显示警报视图会导致视图不显示,ios,objective-c,ios7,Ios,Objective C,Ios7,我正在将视图推送到导航控制器上- [self.navigationController pushViewController:_gameOverViewController animated:YES]; 在新视图的视图显示中,我显示了一个警报视图- UIAlertView* alert = [[[UIAlertView alloc] initWithTitle:@"alert title"

我正在将视图推送到导航控制器上-

[self.navigationController pushViewController:_gameOverViewController animated:YES];
在新视图的
视图显示中,我显示了一个警报视图-

UIAlertView* alert = [[[UIAlertView alloc]
                           initWithTitle:@"alert title"
                           message:@"some text"
                           delegate:self
                           cancelButtonTitle:@"Rate It!"
                           otherButtonTitles:@"No Thanks",
                           @"Don't ask again", nil] autorelease];
    [alert show];
在iOS 6和更早的版本中,这可以正常工作。“gameOver”视图在警报视图后面可见。一旦解除警报视图,游戏结束视图即可见。在iOS 7中,警报视图显示在上一个视图的上方。解除警报视图时,上一个视图仍然可见。“gameOver”视图从未呈现给用户


在iOS 7中是否有更好的方式显示
UIAlertView

归根结底是在navigationcontroller上弹出一个视图,同时打开一个新视图。在ios6及以下版本中,此操作效果良好。在ios7中,在上一个动画停止之前,您似乎无法将新视图推送到堆栈上。

听起来它应该可以工作,当它崩溃时,您会收到什么错误消息?您真的应该切换到ARC…我调查了错误。这是一个不相关的错误,是由于试图加载超出数组边界的数据而导致的。击中阵列的末端是触发“gameOver”视图加载的原因。看起来gameOver视图刚刚从navigationcontroller堆栈中弹出。那么你能回答自己的问题并接受吗?这样人们就不会一直读它,认为你仍然需要帮助。你的代码在viewDidAppear中对我来说很好。此时将显示“推送”视图,然后显示“警报”视图。您是如何创建您推送的_gameOverViewController实例的?