导航控制器工具栏大小和位置 - iOS Swift

Jer*_*nd2 3 toolbar uinavigationcontroller ios swift

您好,我目前正在 Swift 3 中开发一个应用程序。我在嵌入导航控制器的表视图控制器中遇到问题。我当前正在显示 navigationController 工具栏。但是,在初始表视图控制器上,我将导航栏设置为隐藏。这会导致工具栏被调整大小和重新定位。

有谁知道我如何重新加载工具栏以遵循以下代码行:(这在视图中会出现)

self.navigationController?.toolbar.frame = CGRect(x: 0, y: UIScreen.main.bounds.height-80, width: self.view.frame.size.width, height: 80)
Run Code Online (Sandbox Code Playgroud)

我无法找到如何使用以下命令隐藏导航栏后调整工具栏的大小:(这在视图中确实出现)

self.navigationController?.setNavigationBarHidden(true, animated: true)
Run Code Online (Sandbox Code Playgroud)

air*_*aft 6

您无法toolbar直接调整大小:

UIToolbar但你可以在你的项目中继承:

import UIKit

class CustomToolbar: UIToolbar {

override func sizeThatFits(_ size: CGSize) -> CGSize {

    var newSize: CGSize = super.sizeThatFits(size)
    newSize.height = 80  // there to set your toolbar height 

    return newSize
    }

}
Run Code Online (Sandbox Code Playgroud)

在里面storyboard

工具栏的类设置为 CustomToolbar

结果,工具栏的高度为 80:

现在身高80