У меня есть особый вопрос, и я не могу найти ответ по своему делу. У меня есть встроенный ViewController в контроллере навигации с контейнером. В этом Контейнерном Представлении есть scrollView. Что я хочу сделать, так это: когда я прокручиваю свой ContainerView вниз, я хочу, чтобы элемент Bar Button в NavigationContoller из моего ViewController исчез. Когда я прокручиваю вверх, он должен появиться снова.
Я могу скрыть всю панель навигации со следующим кодом, который находится в файле ContainerViewController.swift:
func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
print("123")
if(velocity.y>0) {
UIView.animate(withDuration: 0.5, delay: 0, options: UIView.AnimationOptions(), animations: {
self.navigationController?.setNavigationBarHidden(true, animated: true)
print("Hide")
}, completion: nil)
} else {
UIView.animate(withDuration: 0.5, delay: 0, options: UIView.AnimationOptions(), animations: {
self.navigationController?.setNavigationBarHidden(false, animated: true)
print("Unhide")
}, completion: nil)
}
}
Есть ли подобный код это только делает элемент панели кнопок исчезают? Я не знаю, как получить доступ к элементу панели кнопок, потому что не могу подключить его как выход к файлу ContainerViewController.swift, а только к файлу ViewController.swift.
Надеюсь, вы понимаете мой вопрос и могу ответить на него.