大家应该还记得昨天我们有说到今天会聊聊TableView Cell的内容,事不宜迟,
马上来聊聊Navigation Bar吧(?
注意!!今天要讲的不是TableView Cell哦,已经将主题改为Navigation Bar!
大家可以发现闹钟的新增与编辑都是靠最上面这两颗按钮来完成的,这两颗按钮其实有专属的名称分别是:
应该光看名称就知道谁是谁了吧
那马上使用Code来制作他们吧!
func setNavigation() {
//Left Button
let editButton = UIBarButtonItem(title: "编辑",
style: .plain,
target: self,
action: #selector(editAlarm))
editButton.tintColor = .orange
self.navigationItem.leftBarButtonItem = editButton
//Right Button
let addButton = UIBarButtonItem(image: UIImage(systemName: "plus"),
style: .plain,
target: self,
action: #selector(addAlarm))
addButton.tintColor = .orange
self.navigationItem.rightBarButtonItem = addButton
}
这边来稍微说明一下Code的内容:
由於Navigation Bar的Button只接受UIBarButtonItem型态,因此这边才会将Button宣告为UIBarButtonItem型态。
首先宣告一个名称为editButton的变数,其型态为UIBarButtonItem,
UIBarButtonItem所使用的四个变数说明如下:
设定完後再将按钮的颜色更改为橘色,之後再 assign 到 Navigation Bar Button 里面。
右边的按钮基本上也是一样的设定方式,唯一不同的是:右边的按钮是一个 + 符号的图案
因此这边使用 UIImage(systemNamed: "plus") 来实作一个图案为 + 的按钮。
UIImage(systemNamed: "...")是去Xcode的内建图库依照名称去抓取相对应的图片,
更多图片名称可以去载SF Symbol了解一下
到这边按钮基本上已经设定完成了,但是Xcode应该会报错,因为我们还没实作这两颗按钮按下的Function,
因此这边先新增两个没有内容的Function:
@objc func editAlarm() {
}
@objc func addAlarm() {
}
OK,这样应该就没问题了,记得把设定 Navigation 的 Function 加进去 viewDidLoad()中哦!
override func viewDidLoad() {
super.viewDidLoad()
setViews()
setLayouts()
// Set Navigation
setNavigation()
}
执行专案後应该会呈现出下面这样:
明天应该会来说说这两颗按钮的动作,明天见罗
看日常分享: AwesomeCS FB 看技术文章: AwesomeCS Wiki 笔者最近在阅读...
前几天我们把购物车流程跑完了,其中有讲到优惠的部份, 因此我们订单需要新增table来储存该内容,这...
在 昨天很多的教学後, 这次来个雷同的WindowsMenum的建立,直接上程序码吧! <!-...
阵列中常用的方法还有 filter() 跟 map(),filter() 方法可以根据指定的筛选条件...
今天想偷个懒,先为App加入一点动画, 主要是从欢迎页到登入页的过度动画。 Navigation t...