Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.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
iOS:以编程方式调用容器视图_Ios_Subviews_Uicontainerview - Fatal编程技术网

iOS:以编程方式调用容器视图

iOS:以编程方式调用容器视图,ios,subviews,uicontainerview,Ios,Subviews,Uicontainerview,在调用Main视图控制器之前,我将通过代理通知Main视图控制器是否在容器视图中调用TVC1或TVC2 问题:如何以编程方式告诉主视图控制器中的容器视图调用TVC1或TVC2 TVC1 *tvc1 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC1"]; TVC2 *tvc2 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC2"];

在调用
Main
视图控制器之前,我将通过代理通知
Main
视图控制器是否在
容器视图中调用
TVC1
TVC2

问题:如何以编程方式告诉
主视图控制器中的
容器视图
调用
TVC1
TVC2

TVC1 *tvc1 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC1"]; 
TVC2 *tvc2 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC2"];
加载
Main
视图控制器时,我在何处以及如何告诉
容器视图
加载这些控制器中的一个


通过委托,您可以知道将添加哪个视图,因此您可以使用
viewdiload
中的任意布尔值n来管理它。您可以通过设置一个条件来加载该视图

在主控制器中:

bool isFirstView;

-(void)delegate:(bool)isFirst
{
  isFirstView = isFirst;
}

// in viewDidLoad 
)
(void)viewDidLoad
{
  if(isFirstView)
  {
    TVC1 *tvc1 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC1"]; 
  }
  else
  {
    TVC2 *tvc2 = [self.storyboard instantiateViewControllerWithIdentifier:@"TVC2"];
  }
}

您可以通过使用自定义容器视图控制器来实现这一点,该控制器将管理子视图控制器

这方面有一个很好的教程:


我正在与代码作斗争。如何告诉容器视图应该加载哪个控制器?TVC1*TVC1=[self.storyboard instanceeviewController的标识符:@“TVC1”];TVC2*TVC2=[self.storyboard实例化视频控制器的标识符:@“TVC2”];现在,我在哪里以及如何加载这些控制器?这取决于你,如果你想使用情节提要创建它,那么你必须在导航控制器上创建一个实例,你可以调用这个tvc1 n tvc2 in view didload方法,通过使用任何bool值通过true或false获取你想要加载的视图,该视图在容器中如何自动调用视图?您可以使用此视图控制器的参考来执行此步骤