隐藏导航栏使视图中的所有内容变短

Hiding Navigation bar short everything in view up

我有以下故事板设置:

故事板:

我在点击时隐藏了导航栏和工具栏,但是当导航栏消失时,UITextView 会向上移动。

    lyrics.addGestureRecognizer(UITapGestureRecognizer(target: self, action: "show_fdw_bck"))

    func show_fdw_bck () {
    print("screen tapped")
    if SongMgr.settings2 == false {
        fwdappear.hidden = true
        bckappear.hidden = true
        navigationController?.navigationBarHidden = true
        navigationController?.setToolbarHidden(true, animated: false)
        //lyrics.frame = CGRect(x: 10, y: 80, width: self.view.frame.size.width - 20, height: self.view.frame.size.width)
        SongMgr.settings2 = true
    } else {
        fwdappear.hidden = false
        bckappear.hidden = false
        navigationController?.navigationBarHidden = false
        navigationController?.setToolbarHidden(false, animated: false)
        //lyrics.frame = CGRect(x: 10, y: 0, width: self.view.frame.size.width - 20, height: self.view.frame.size.width)

        SongMgr.settings2 = false
    }

}

我试图改变场景中对象的顺序,将文本视图移动到视图底部解决了问题,但它隐藏了 UIButtons。任何帮助将不胜感激。

您的 UITextView 向上移动的原因是约束保持不变。有几种方法可以解决此问题,一种选择是为 UITextView 的上边距设置 IBOutlet,然后设置 constant 属性为当前的 +64(导航栏的高度)。

另一种方法是在故事板中重做 UITextView 的约束,并根据需要为特定的优先级设置不同的优先级。