#34 在BarButtonItem上實作Pull Down Button選單(menu)按鈕

參考彼得潘的文章,改成在BarButtonItem上實作Pull Down Button

首先用程式建立好一個BarButtonItem

 override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.

let menuButtonItem = UIBarButtonItem(systemItem: .trash)
}

接著在menu屬性中建立子物件,這邊不用showsMenuAsPrimaryAction,你也沒得選


override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.

let menuButtonItem = UIBarButtonItem(systemItem: .trash)

menuButtonItem.menu = UIMenu(children: [
UIAction(title: "Select Messages", image: UIImage(systemName: "checkmark.circle"), handler: { action in
print("Select Message")
}),
UIAction(title: "Edit Pins", image: UIImage(systemName: "pin")) { action in
print("Edit Pins")
},
UIAction(title: "Edit Name and Photo", image: UIImage(systemName: "person.crop.circle"), handler: { action in
print("Edit Name and Photo")
})
])



}

最後放到NavigationItem內


override func viewDidLoad() {
super.viewDidLoad()

// ... Create BarButtionItem and Pull Down Menu ...

self.navigationItem.rightBarButtonItem = menuButtonItem

}

成果

Github原始碼參考

--

--