Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> iOS

เพิ่ม Navigation Bar ด้วยโค้ดใน iOS (Swift)

การเพิ่ม Navigation Bar โดยโปรแกรม (ไม่ใช้ Storyboard) ทำใน viewWillLayoutSubviews

ขั้นตอน

  1. ดึงความกว้างของ view
  2. สร้าง UINavigationBar กว้างเท่า view สูง 44 pt
  3. เพิ่มเข้า view hierarchy
  4. (ทางเลือก) เพิ่ม title และ button

โค้ดตัวอย่าง

class ViewController: UIViewController {
    override func viewWillLayoutSubviews() {
        let width = self.view.frame.width
        let navigationBar = 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: .done, target: nil, action: #selector(selectorX))
        navigationItem.rightBarButtonItem = doneBtn
        navigationBar.setItems([navigationItem], animated: false)
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    @objc func selectorX() { }
}

ผลลัพธ์

Navigation Bar แสดงที่ด้านบนพร้อม title และปุ่ม Done ด้านขวา

รูปภาพตัวอย่าง UI ถูกละเว้น