pushfrontviewcontroller 打开空白屏幕

pushfrontviewcontroler open blank screen

我需要通过 SWRevealViewController 将第二个视图控制器设置为 root。但是当我调用 pushFrontViewcontroler 时,它变成了一个空白屏幕。我在故事板中定义的所有标签都丢失了。但是我包含的外部 xib 可以正确显示。我错过了什么吗?请赐教如何解决这个问题。下面是我用来调用第二个视图控制器的代码。

SWRevealViewController *revealController = self.revealViewController;

ImageDetailViewController *imageViewController = [[ImageDetailViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:imageViewController];

[revealController pushFrontViewController:navigationController animated:YES];

我也试过用这个还是失败了

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:imageViewController];

[self.revealViewController setFrontViewController:navigationController];
[self.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES];

Storyboard

您的主要问题是 imageViewController 的实例化

ImageDetailViewController *imageViewController = [[ImageDetailViewController alloc] init];

如果你这样做

ImageDetailViewController *imageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MyImageViewController"];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:imageViewController];
[revealController pushFrontViewController:navigationController animated:YES];

这很完美,但我仍然建议您将 navViewControllers 放在您的故事板上,并像下面的代码那样更改它们

     - (void) goMainViewControllerAction
    {
    UINavigationController* navigationController = [self.storyboard instantiateViewControllerWithIdentifier:@“MainNavViewController”];
    [self.revealViewController pushFrontViewController:navigationController   animated:YES];
     }
  //

- (void) goImageViewControllerAction
    {
       UINavigationController* navigationController = [self.storyboard    instantiateViewControllerWithIdentifier:@"MyImageNavViewController"];
       [self.revealViewController     pushFrontViewController:navigationController animated:YES];
    }

希望对您有所帮助