Swift在導航欄左側或者右側放置多個按鈕在做應用中非常的常用了,我們下文就一起來看看Swift在導航欄左側或者右側放置多個按鈕例子,希望此文章能夠對各位有幫助。
使用 navigationItem.leftBarButtonItem 和 navigationItem.rightBarButtonItem 可以很友善的分别設定導航欄左側和右側按鈕,但一側隻能有一個按鈕。
如果想要在一側使用多個按鈕,可以通過 leftBarButtonItems 和 rightBarButtonItems 來實作。 下面示範給導航欄右側添加兩個按鈕(搜尋和設定):
同時兩個按鈕間設定了間距,并将設定按鈕頂到邊上。

import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//搜尋按鈕
let button1 = UIButton(frame:CGRectMake(0, 0, 18, 18))
button1.setImage(UIImage(named: "search"), forState: .Normal)
button1.addTarget(self,action:Selector("tapped1"),forControlEvents:.TouchUpInside)
let barButton1 = UIBarButtonItem(customView: button1)
//設定按鈕
let button2 = UIButton(frame:CGRectMake(0, 0, 18, 18))
button2.setImage(UIImage(named: "settings"), forState: .Normal)
button2.addTarget(self,action:Selector("tapped2"),forControlEvents:.TouchUpInside)
let barButton2 = UIBarButtonItem(customView: button2)
//按鈕間的空隙
let gap = UIBarButtonItem(barButtonSystemItem: .FixedSpace, target: nil,
action: nil)
gap.width = 15;
//用于消除右邊邊空隙,要不然按鈕頂不到最邊上
let spacer = UIBarButtonItem(barButtonSystemItem: .FixedSpace, target: nil,
action: nil)
spacer.width = -10;
//設定按鈕(注意順序)
self.navigationItem.rightBarButtonItems = [spacer,barButton2,gap,barButton1]
}
func tapped1(){
print("搜尋按鈕點選")
}
func tapped2(){
print("設定按鈕點選")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
好了以上就是關于ios開中導航欄的放多個按鈕的例子。