IOS查看代理及其调用时间

IOS查看代理及其调用时间,ios,delegates,uiviewcontroller,Ios,Delegates,Uiviewcontroller,我有一个iPhone应用程序,有三个视图,一个切换视图,一个数据采集视图和一个数据摘要视图。当应用程序启动时,将调用switcher视图的viewDidLoad代理,然后调用数据采集视图的viewDidLoad代理两次,然后调用ViewWillEnglish和数据采集视图的dealloc。这两个调用都来自switcher视图中的同一行代码,这是我为data acquisition视图调用insertSubView时的代码。一个调用来自UIViewController,另一个调用来自UINib,U

我有一个iPhone应用程序,有三个视图,一个切换视图,一个数据采集视图和一个数据摘要视图。当应用程序启动时,将调用switcher视图的viewDidLoad代理,然后调用数据采集视图的viewDidLoad代理两次,然后调用ViewWillEnglish和数据采集视图的dealloc。这两个调用都来自switcher视图中的同一行代码,这是我为data acquisition视图调用insertSubView时的代码。一个调用来自UIViewController,另一个调用来自UINib,UIViewController也调用UINib。这有什么意义吗

然后,当我接受用户输入以更改视图时,不会调用数据采集视图的ViewWillEnglish委托。我刚刚得到数据摘要视图的viewDidLoad调用

我很困惑。我试图使用ViewWillEnglish从data acquisition视图中写出数据,然后将数据读取到data summary视图中,但鉴于此顺序,它不起作用


有什么想法吗?

解决您最后/主要关心的问题。否[DataAcquisitionView视图将消失]不是填充SummaryView的位置。加载完数据后,您应该明确地创建summaryView,然后用需要汇总的内容填充它的视图,然后显示它

根据您的新信息:

要使用tabBarController委托方法

-(void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
    NSLog(@"Switch views");
}

这将告诉您,用户选择了不同的viewController,您可以处理该事件。

谢谢,但我不明白您的答案。问题是何时触发从data acquisition视图中写入数据,以便在加载该视图时将其读回data summary视图。我如何知道数据采集视图即将消失?问题:1您的三个视图是否使用单独的视图控制器?2采集视图的基本功能是什么,即网络访问或用户交互?3切换器视图首先在做什么?是的,我有三个独立的视图控制器一个是切换器视图控制器,一个是数据采集视图控制器,它有很多按钮来收集用户的数据,还有一个是视图摘要控制器,它报告数据。switcher视图只管理窗口底部的一个选项卡,以便在其他两个视图之间切换。根据该注释更新答案。