Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.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
Objective c dismissViewControllerAnimated显示白色屏幕_Objective C_Uiviewcontroller_Uitabbarcontroller - Fatal编程技术网

Objective c dismissViewControllerAnimated显示白色屏幕

Objective c dismissViewControllerAnimated显示白色屏幕,objective-c,uiviewcontroller,uitabbarcontroller,Objective C,Uiviewcontroller,Uitabbarcontroller,我得到了一个名为viewControllerA的ViewController,它为ViewControllerB提供以下通用代码: ViewControllerB *viewControllerB = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"Identifier"]; [self presentViewController:v

我得到了一个名为viewControllerA的ViewController,它为ViewControllerB提供以下通用代码:

ViewControllerB *viewControllerB = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"Identifier"];
[self presentViewController:viewControllerB animated:YES completion:nil];
viewControllerB是UITabbarController,但在调用

[self dismissViewControllerAnimated:YES completion:nil];
从其中一个TabbarControllers的ViewControllers显示第2页,我只看到一个白色屏幕。我本来希望看到viewControllerA,但我看到的只是一个空屏幕

这是一个很好的例子

有人知道为什么我会得到一个空的白色屏幕而不是viewControllerA吗

编辑 我在viewControllerA中的viewDidAppear上设置了一个断点,当调用dismissViewControllerAnimated时,它会在那里中断。但它怎么可能只显示一个白色屏幕呢

另外,我认为您应该知道viewControllerA的布局是通过编程创建的。viewControllerB的创建要晚得多,同时我们决定使用故事板,因此viewControllerB的布局是使用故事板创建的

如果从viewControllerA使用


您可能应该调用[self dismissViewControllerAnimated:YES completion:nil];在viewControllerA中,但不是从您的TabBarViewController的其中一个页面中。

您可以在viewcontrollerB中删除自己
[self.presentingViewController dismissViewControllerAnimated:NO completion:nil]

你是说我应该这样做:[[自我呈现视图控制器]解除视图控制器激活:是完成:无];遗憾的是,它也显示了一个白色屏幕。a->B->Page 2,它必须在a中调用,进行一些委托或在ViewController层次结构中正确向后移动。但是presentingViewController是对的吗?同时,我会键入一些代码移回ANo,因为第2页没有直接显示在A中。谢谢你的脏检查。照你说的做,但结果是一样的。在pop上设置一个断点,它确实会从第2页被调用,但它仍然是一个白色屏幕。
NSLog(@"%@", [[self presentingViewController] class]);
[self presentViewController:viewControllerB animated:YES completion:nil];