Iphone 如何访问父视图报告器

Iphone 如何访问父视图报告器,iphone,Iphone,我有3个视图控制器。第一视图控制器、第二视图控制器和第三视图控制器。第一个viewcontroller是根viewcontroller,它正在添加第二个viewcontroller xib作为子视图。像 [firstviewcontrollerObject.view添加子视图:SecondViewControllerObject.view] 在secondViewcontroller中,我有一个按钮。调用按钮触摸操作时,将加载第三个IEW控制器。像 [SecondViewControllerob

我有3个视图控制器。第一视图控制器、第二视图控制器和第三视图控制器。第一个viewcontroller是根viewcontroller,它正在添加第二个viewcontroller xib作为子视图。像

[firstviewcontrollerObject.view添加子视图:SecondViewControllerObject.view]

在secondViewcontroller中,我有一个按钮。调用按钮触摸操作时,将加载第三个IEW控制器。像

[SecondViewControllerobj.view添加子视图:thirdviewcontrollerobj.view]

现在屏幕上出现了第三个DViewController。这个viewcontroller什么都没有,只有一个小按钮。所以我看到屏幕上有两个按钮。第一个按钮是SecondviewCOntroller,第二个按钮是ThirdViewCOntroller。但是,我只能给出第三视图控制器的触摸动作,而不能给出第二视图控制器按钮


我应该如何设计我的视图以同时点击两个按钮,并且我不想将两个控制器合并为一个。

我认为您应该在不使用多个UIViewController的情况下实现它

视图控制器用于从导航堆栈中推送和弹出:一次只显示一个视图。我没有试过,但我想这就是为什么你会感染病毒

但是您更喜欢NavigationController,而不是他们的xib优势,是吗

如果是这样,有一种方法可以在视图中使用xib:

NSArray * arr1 = [[NSBundle mainBundle] loadNibNamed:@"MyView1" owner:nil options:nil];
NSArray * arr2 = [[NSBundle mainBundle] loadNibNamed:@"MyView2" owner:nil options:nil];
NSArray * arr3 = [[NSBundle mainBundle] loadNibNamed:@"MyView3" owner:nil options:nil];
UIView * v1 = [arr1 objectAtIndex:0];
UIView * v2 = [arr2 objectAtIndex:0];
UIView * v3 = [arr3 objectAtIndex:0];

// now you have your 3 views, do what you want with them:
v1.center = CGPointMake(100,100);
[self.view addSubview:v1];
v2.center = CGPointMake(100,200);
[self.view addSubview:v2];
v3.center = CGPointMake(100,300);
[self.view addSubview:v3];

这意味着您的第一个视图控制器包含两个视图,分别来自secontroller.view和thirdviewcontroller.view。现在,第三个视图是按手势,但第二个视图不是按手势

请在firstviewcontroller.view上查看两个视图 就这样做吧

firstviewcontroller.secondVW=[[Secondviewcontroller alloc]init].view;
    firstviewcontroller.thirdVW=[[Thirdviewcontroller alloc]init].view;

通过这种方式,两个视图都将进行触摸。

访问点击事件是什么意思?它是关于按钮响应者的。您想听到点击还是触发动作?@balla I编辑的问题。现在可能很清楚了。