【问题标题】:How do I return back to RootView Controller from my last view controller?如何从上一个视图控制器返回到根视图控制器?
【发布时间】:2017-05-26 08:14:09
【问题描述】:

我有 5 个视图控制器,想从最后一个视图返回到第一个视图控制器

【问题讨论】:

标签: ios objective-c iphone xcode ios10


【解决方案1】:

在动画闪屏上使用此方法

[self performSelector:@selector(setHidden:) withObject:nil afterDelay:2.0];

-(void) setHidden:(id)sender
{
     UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboare" bundle:nil];
     YourVC* vController = (YourVC*)[Storyboard instantiateViewControllerWithIdentifier:@"storyboardId"];
     UINavigationController *navcotoller=[[UINavigationController alloc]initWithRootViewController:vController];
     self.window.rootViewController =navcotoller;
}

【讨论】:

    【解决方案2】:

    调用一个函数,您必须在其中更改应用程序 rootviewcontroller。将其设置为导航控制器

    yourViewcontoller *viewController = [[yourViewContoller alloc] init];
    UINavigationController *navController=[[UINavigationController alloc]initWithRootViewController:viewController];
    self.window.rootViewController = navController;
    

    【讨论】:

      【解决方案3】:

      如果您使用情节提要,请给 UINavigationController 一个情节提要 ID。然后您可以通过代码启动它并呈现:

      UINavigationController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"<Storyboard ID>"];
      [self presentViewController:vc animated:YES completion:nil];
      

      【讨论】:

        【解决方案4】:

        如果您使用UINavigationController,您可以而且应该简单地调用

        [self.navigationController popToRootViewControllerAnimated:YES];
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-03-23
          • 2020-08-18
          • 1970-01-01
          • 2016-12-11
          • 2013-01-08
          • 2018-03-08
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多