隐藏第二个ViewController并导航到第三ViewController
-
25-10-2019 - |
题
我在 ViewControllerA
和别的 ViewControllerB
也已加载在ViewController的 stack.viewControllerB
也有相机屏幕。从 ViewControllerA
我在打电话 ViewControllerB
通过以下代码:
AppNameAppDelegate *appDelegate = (AppNameAppDelegate *)[[UIApplication sharedApplication] delegate];
ViewControllerB *l_ViewControllerB = [appDelegate ViewControllerB];
l_ViewControllerB.view.hidden = NO;
[self.navigationController pushViewController:l_ViewControllerB animated:YES];
现在来自 ViewControllerB
, ,我想切换到 ViewControllerC
.
self.view.hidden = YES;
ViewControllerC *l_ViewControllerC = [[ViewControllerC alloc] init];
[self.navigationController pushViewController:l_ViewControllerC animated:YES];
[l_ViewControllerC release];
但是它的导航到 ViewControllerA
我不需要的,所以我需要帮助,如何导航到 ViewControllerC
没有显示 ViewControllerA
.
更新:viewControllerb是在viewControllerb.mm文件中定义的,在viewControllerb.mm文件中也涉及一些C ++编码。这将使ViewControllerb在viewControllerb.m或viewControllerb.mm文件中定义任何区别?
解决方案
请试试 这个 可能对您有帮助。
其他提示
您应该删除这两行,除非您没有提到某些原因:
// in ViewControllerA:
l_ViewControllerB.view.hidden = NO;
// in ViewControllerB:
self.view.hidden = YES;
也许在导航到 ViewControllerB
I_NIGMA SDK正在创建一个新线程。这就是为什么如果您尝试从 ViewControllerB
对于任何其他视图,您都无法导航,除了已经可见的视图Controllera。您可以尝试在UI主线程上执行操作,以便在UI应用程序中反映任何UI更改。你可以试试 performSelectorOnMainThread
如下。
[self performSelectorOnMainThread:@selector(operationComplete) withObject:nil waitUntilDone:false];
不隶属于 StackOverflow