gpt4 book ai didi

ios - uiscrollview 中的 UIViewControllers 调用 viewdidappear

转载 作者:行者123 更新时间:2023-12-01 18:13:27 26 4
gpt4 key购买 nike

我将 5 个 View Controller 添加到带有页面控件的 ScrollView 中,这样我就可以从一个 View Controller 滑动到另一个 View Controller 。

在初始化时,我正在加载 3 个 View Controller (左、中、右)
我的问题是我的三个 viewcontroller 正在触发 viewDidAppear 但只有中心 viewController 是可见的......

有没有办法避免调用 viewdidappear 不可见的 View Controller ?
我正在将我的 View Controller 添加到我的 ScrollView 中,如下所示:

if (controller != nil){
[self addChildViewController:controller];
[controller didMoveToParentViewController:self];

}
[scrollView addSubview:controller.view];

最佳答案

不,viewDidAppear 方法与 View 的可见性无关,如果您获得文档,您将看到

Notifies the view controller that its view was added to a view hierarchy.



因此,当 View 添加到层​​次结构时,将调用此方法。因此 View 被加载,并添加到层次结构中,即使在 mainView 的不可见空间中,它也会调用 viewDidAppear。

要实现你想要的,你应该实现scrollView的委托(delegate),检查偏移量,看看你在哪个页面,然后你可以调用viewController上的一个方法来完成你想要的工作。

关于ios - uiscrollview 中的 UIViewControllers 调用 viewdidappear,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25891907/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com