【问题标题】:How to assign self to another class object, while navigating to another view controller with out segue如何将 self 分配给另一个类对象,同时导航到另一个视图控制器而没有 segue
【发布时间】:2017-04-29 08:44:08
【问题描述】:

我正在使用下面的代码导航到另一个视图控制器,我想将此 self 分配给另一个类的委托,我该怎么做?

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

UINavigationController *controller = [storyboard instantiateViewControllerWithIdentifier:@"storyBoardID"];

self.navigationController presentViewController:controller animated:YES completion:nil];

【问题讨论】:

  • 只需在情节提要中添加一个导航控制器,使用 edit => embed In =>Navigation controller 。只需编写您的代码,您的导航就可以完美运行。
  • 您的问题解决了吗?

标签: ios objective-c uinavigationcontroller delegates uistoryboardsegue


【解决方案1】:

从导航控制器获取视图控制器

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

UINavigationController *controller = [storyboard instantiateViewControllerWithIdentifier:@"navigationControllerID"];

TargetVC *targetVC = (TargetVC *)controller.viewControllers.firstObject
   //OR
TargetVC *targetVC = (TargetVC *)controller.topViewController;

targetVC.mydelegate = self;

[self.navigationController presentViewController:controller animated:YES completion:nil];

从 TabBar 控制器获取视图控制器

   UITabBarController *homeTabBar=[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"homeTabBarID"];

   TargetVC *targetVC =nil;

   UINavigationController *nav = [homeTabBar.viewControllers objectAtIndex:0];

  //if you have multiple tab then you can give Index as per your ViewController
   targetVC =(TargetVC*)[nav.viewControllers objectAtIndex:0];

   targetVC.mydelegate = self;

   [self.navigationController presentViewController:homeTabBar animated:YES completion:nil];

【讨论】:

  • 目标视图控制器是一个标签栏并且特定索引为零,我要做的是 secondVC.mydelegate = self;
  • 然后您可以将您的 Storyboard id 设置为您的视图控制器并从您的 Storyboard id 中获取我已经更新了我的答案
  • 您的问题解决了吗?
  • 可以添加情节提要的Serene Shot吗?
  • storyboard 中的每个控制器都有一个导航控制器,您的意思是为该特定控制器的导航控制器添加 storyboardID 对吗?
猜你喜欢
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多