添加到UIScrollView的viewController不会调用其viewDidAppear方法

问题描述

|| 我有一个UIScrollView,它具有通过viewController1.view和viewController2.view属性添加的2个不同视图。我想在屏幕上出现viewController1.view或viewController2.view时收到通知。尝试使用viewDidAppear方法,但未调用。 错过了什么?有任何想法吗? 谢谢!
//Add xViewController to scrollView
[scrollView addSubview:firstViewController.view];
[scrollView addSubview:secondViewController.view];
[scrollView addSubview:thirdViewController.view];
[scrollView addSubview:fourthViewController.view];
    

解决方法

诸如viewDidAppear之类的方法只能在将视图控制器推入堆栈时触发,而不能将单个视图推入。抱歉,我无法真正建议您如何跟踪它们到屏幕上-除非您初始化并隐藏它们的内容,否则一旦准备好,您就会知道自己只是一个。他们。     ,您将需要使用scrollview的contentOffset来计算在UIScrollViewDelegate函数scrollViewDidScroll中显示的视图。 查看PageControl的实现以了解UIScrollView的工作原理。