从子视图导航到另一个视图控制器

时间:2016-06-06 03:46:48

标签: objective-c uiviewcontroller uinavigationcontroller addsubview

我正在尝试从子视图导航到另一个viewcontroller。

我正在添加我的子视图,如下所示

  

EducatorDetailsViewController(父视图)

adultV=[[AdultOccupantV alloc]init];
adultV.frame = CGRectMake(0, 0, 1024, 768);
adultV.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5];
adultV.delObj=self;
adultV.hidden=YES;
[self.view addSubview:adultV];

我尝试使用下面的代码从子视图导航到我的LoginViewController。

LoginVC *login =[[LoginVC alloc] init];
[self.navigationController pushViewController:login animated:YES];

但是这段代码出错了,因为子视图没有导航控制器。 我发现了一个类似的问题here 这是几年前被问过的。它实际上有一个答案,但我无法理解答案,因为我对Objective C很新。如果有人可以帮助我找到一种从子视图导航到另一个视图的方法,那将会非常棒。控制器。

1 个答案:

答案 0 :(得分:1)

这种设计模式称为代理模式或委托模式。你可以在维基中查看。

在您的示例中,视图不应该导航操作,但查看超级视图控制器会执行操作。所以ViewController应该是你视图的委托。