我有一个可以旋转的子视图(不是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 中),但在这种情况下导航栏不会出现。
请帮我解决这个问题,因为我不知道如何解决它。