1

我有一个可以旋转的子视图(不是root,让它成为视图A)。我还有一个模态视图(让它成为视图 M),然后显示一个数据从服务器进来。我们的 QA 发现,如果数据在视图 A 旋转时出现,模态视图 M 将不会显示。实际上,显示模态视图的代码将被执行,应用程序将转到根视图,但用户不会看到模态视图。

模态视图 M 显示为以下代码:

[self.navigationController popToViewController:self.rootViewController animated:animated];    
[self performSelector:@selector(showModalAcceptDialog:) withObject:requestID afterDelay:0.1];  

(void)showModalAcceptDialog:(NSManagedObjectID*)requestID {
    RequestAcceptViewController *requestAcceptViewController = [[RequestAcceptViewController alloc] initWithNibName:@"RequestAcceptViewController" bundle:nil];
    requestAcceptViewController.requestID = requestID;
    [[self navigationController] presentModalViewController:requestAcceptViewController animated:YES];
    [requestAcceptViewController release];  
}

在显示模态视图之前执行到根视图的导航需要延迟。否则,应用程序将因某些内部异常而崩溃。

横向模式下的视图 A 也没有导航栏,并在消失时恢复它(在 viewWillDisappear 中),但在这种情况下导航栏不会出现。

请帮我解决这个问题,因为我不知道如何解决它。

4

0 回答 0