gpt4 book ai didi

ios - setNavigationBarHidden 不适用于其他类(Swift 3.0)

转载 作者:搜寻专家 更新时间:2023-11-01 07:18:17 25 4
gpt4 key购买 nike

我想在将内容滚动到顶部时显示导航栏。

我可以隐藏/显示来自 ViewController 的导航,但是当我从 UIcollectionView 类调用时“setNavigationBarHidden”不起作用。

我在 ViewController 上有垂直的 UIcollectionView 和水平的 UIcollectionView。现在我从另一个类的垂直方向调用 hideBar(),因为我的 VC 有水平方向的 UIcollectionView:

我正在调用如下所示的方法:-

FeedCell.swift(垂直 UICollectionView) enter image description here

HomeController.swift(有两个 UICollectionView 的 ViewController) enter image description here

enter image description here

项目的层次结构

enter image description here

似乎 FeedCell.swift 能够访问 HomeController,但是当我从 FeedCell.swift 调用时,navigationController?.setNavigationBarHidden 不工作。

如果有人可以就此问题提供建议,非常感谢,谢谢!

最佳答案

注意:以下答案基于问题所有者和我之间的对话。

   func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {

if(velocity.y>0) {

UIView.animate(withDuration: 2.5, delay: 0, options: UIViewAnimationOptions(), animations: {
self.navigationController?.setNavigationBarHidden(true, animated: true)
}, completion: nil)

} else {
UIView.animate(withDuration: 2.5, delay: 0, options: UIViewAnimationOptions(), animations: {
self.navigationController?.setNavigationBarHidden(false, animated: true)
}, completion: nil)
}

关于ios - setNavigationBarHidden 不适用于其他类(Swift 3.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40645671/

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