使用 Swift 在 iOS 中以程式設計方式新增導航欄
要以程式設計方式新增導航欄,我們將按照下面提到的步驟進行。我們將在 viewController 的 ViewWillLayoutSubviews 方法中完成此操作。
獲取當前檢視的寬度。
let width = self.view.frame.width
建立一個導航欄,其寬度等於當前檢視的寬度,高度為 44 px,即導航欄的預設高度。
let navigationBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: width, height: 44))
將新建立的導航欄新增到我們的檢視中。
self.view.addSubview(navigationBar)
我們可以進一步擴充套件此示例,以便為檢視新增標題和按鈕。完整的執行結果應如下面的類所示。
class ViewController: UIViewController { override func viewWillLayoutSubviews() { let width = self.view.frame.width let navigationBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: width, height: 44)) self.view.addSubview(navigationBar); let navigationItem = UINavigationItem(title: "Navigation bar") let doneBtn = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.done, target: nil, action: #selector(selectorX)) navigationItem.rightBarButtonItem = doneBtn navigationBar.setItems([navigationItem], animated: false) } override func viewDidLoad() { super.viewDidLoad() } @objc func selectorX() { } }
當我們執行此示例時,其結果應如下所示。
廣告