首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

iOS Navigation Bar 按鈕誤進 Toolbar:Storyboard Embed 正確姿勢

     編輯:程式設計疑難解答

現象

拖曳 Bar Button Item 到 Navigation Bar 卻跑到 Toolbar,或出現兩個 Navigation Bar。

正確操作流程

  1. 在 Storyboard 中選中**目標 View Controller**(而非 Navigation Controller)。
  2. 菜單 Editor → Embed In → Navigation Controller**。系統自動建立 Navigation Controller 並設為初始場景(若非初始需手動勾選 Is Initial View Controller)。
  3. 此時該 View Controller 頂部會出現 **Navigation Bar**(屬於 Navigation Controller 管理)。
  4. 直接從 Object Library 拖曳 Bar Button Item 到 **這個 Navigation Bar** 上(左/右/中)。
  5. 屬性檢查器設定 Title/Image/Action,或建立 @IBOutlet/@IBAction 連線。

常見誤區

  • 手動拖一個 Navigation Bar 到 View Controller 頂部 → 產生兩個 Bar(一個來自 Embed,一個手動)。
  • 拖 Button 到 Toolbar(底部條)而非 Navigation Bar(頂部條)。
  • 未 Embed Navigation Controller 直接在無 Navigation Bar 的場景加按鈕。

程式碼建立對照


// 在前一個 VC push 時
let vc = storyboard.instantiateViewController(identifier: "TargetVC")
navigationController?.pushViewController(vc, animated: true)
// TargetVC 會自動顯示 Navigation Bar(繼承自 push 過程)
// 在 TargetVC viewDidLoad 設定按鈕
navigationItem.rightBarButtonItem = UIBarButtonItem(title: "字體", style: .plain, target: self, action: #selector(fontTapped))
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved