对不起标题,我不知道怎么说得对。在本教程中,我一直在使用scrollview概念(如Snapchat)中的视图控制器:
https://www.youtube.com/watch?v=eHERMrAcmdo
我遇到的问题是,当我向视图控制器添加导航时,我希望能够隐藏滚动视图上的内容。我基本上添加了一些叠加按钮,当我不在那些3根控制器中时我想要隐藏它们。我想在其他视图控制器中更改滚动视图中有很多不同的东西,但我只是不明白如何访问它。
答案 0 :(得分:0)
如果我理解正确,听起来你正试图检测用户所在的视图,并且有一些显示和隐藏某些按钮的逻辑。因此,如果您希望您的逻辑在主ViewController类中执行此操作,您可以执行类似的操作..
将UIScrollViewDelegate添加到ViewController
,例如
class ViewController: UIViewController, UIScrollViewDelegate
然后在viewDidLoad()
中scrollView.delegate = self
然后在viewDidLoad()
下添加此函数func scrollViewDidScroll(scrollView: UIScrollView) {
let offSet = self.scrollView.contentOffset
if offSet.x == 0 {
print("On scrollview 1") // Hide the button here?
} else if offSet.x == 414.0 {
print("On scrollview 2")
} else if offSet.x == 828.0 {
print("On scrollview 3")
}
}
答案 1 :(得分:0)
好的,我已经弄清楚了。这个问题也在其他地方被问到,我认为他最终采用了不同的方式,但这是最简单的方法,可能是最好的方法。 3个视图控制器是scrollview的childViewControllers,所以我不得不使用self.parentViewController来访问scrollview。