这是我正在努力的情况。
ViewController 1有两个UIToolBars。上部工具栏按钮显示一个值,下部工具栏按钮触发ViewController 2中的一个动作,该动作恰好是通过容器视图嵌入的TableViewController。 原因是 - 我需要在滚动TableView时保持工具栏的位置。
我使用委托协议将VC2中的值发送到VC1的上部工具栏,工作正常。 但我无法使用VC1中的下方工具栏触发VC2中的操作。
我想问三个问题:
1。)触发行动/解决问题的最佳做法是什么? 2.)在VC2上使用名为“theButtonWasTapped”的方法时,代码看起来如何? 3.)方法是通过容器视图以正确的方式嵌入TableView还是有更好的方法?
我试着阅读各种文件,但我甚至不知道在这种情况下从哪里开始。
任何帮助都会受到高度赞赏,因为我已经忍受了几天的沮丧,并且不知道我的精神障碍在哪里结束,而且我的缺席知识开始了。
非常感谢你!
答案 0 :(得分:1)
如果VC2嵌入在容器视图中,那么它将是VC1的子视图控制器。因此,您可以使用self.childViewControllers [0]从VC1访问它。所以你应该能够在VC1中做这样的事情:
-(IBAction)toolBarButtonTapped:(id) sender {
SecondViewController *vc2 = self.childViewControllers[0];
[vc2 methodInVC2];
}