我对 Swift 还很陌生。我正在创建一个使用 UIScrollView
来显示多个 UIViews
的应用程序(如 Snapchat)。我正在尝试在 ScrollView 中包含的多个 View Controller 上实现开关。
我的目标是当一个开关打开时所有开关都关闭,因此一次只能打开一个开关(因此开关在其他 View Controller 中关闭) 。
我无法完成此操作,因为当您加载 ScrollView 时,其中包含的 subview 仅在运行时加载一次,并且当您滑动到下一个 View / View Controller 时, View Controller 的 viewdidload 永远不会已调用。
是否有我可以调用加载或某些东西(或调用其他 View Controller 的viewdidLoad)的方法来加载下一个 View Controller ?
我在 stackoverflow 上找不到任何与此相关的信息。我尝试创建类的变量并调用一个方法,该方法具有 viewdidload 方法具有另一个 View 的所有内容,但这不起作用。我还尝试创建一个方法,该方法具有 viewdidload 方法具有类型方法的所有内容,但这也不起作用。我还能做些什么吗?
最佳答案
没有。 viewDidLoad()
仅在 View 加载时才会被调用。
或者,您可以尝试使用放置在 scrollView
内的多个 View
,而不是放置 viewControllers
。如果所有 View 都在同一个 viewController 中,那么您将能够向开关添加一个操作,您可以在其中执行所需的逻辑来关闭它们。
关于swift - 如何在 Swift 中访问 ScrollView 中的各个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37716303/