Description:
UIDatePicker可以產生日期或時間選單讓使用者輸入日期或時間。
此demo包含兩個UIDatePicker,分別讓使用者選擇年月日及時間。並加上一個彈出視窗讓使用者確認時間選擇是否正確。
Component:
Highlight function:
UIDatePicker宣告方式及其member function用法:
var timePicker: UIDatePicker = UIDatePicker()
timePicker.datePickerMode = .time// 顯示模式,有只顯示時間、只顯示日期、顯示日期與時間以及倒數計時器
timePicker.date = Date() //將Datepicker的起始時間為當前時間
timePicker.minuteInterval = 1 //若datePickerMode設為"time"時,可用來設定時間最短間隔
timePicker.locale = Locale(identifier: "zh_TW")//設定DatePicker的語系
//設定可讓user選擇的最早及最晚的日期時間,需使用Formatter格式
timePicker.minimumDate
timePicker.maximumDate
UIDatePicker中的date、minimumDate及maximumDate,其data type都是NSDate,當要設置或修改這些屬性時,都必須呼叫 Date() 及 DateFormatter() 來做轉換。
let dateFormat = DateFormatter()
dateFormat.dateFormat = "yyyy-MM-dd HH:mm"
let fromDate = dateFormat.date(from: "2017-01-01 00:00")
datePicker.minimumDate = fromDate
Additional:
DateFormatter常使用到的日期時間顯示的格式:
yyyy:西元年份,像是 2015、1998。
yy:西元年份末兩位數,像是 15、95。
MMMM:月份,像是 December、January。
MMM:月份簡寫,像是 Oct、Feb。
MM:以數字代表月份,像是 08、12。
dd:日期,像是 07、31。
EEEE:星期幾,像是 Saturday、Monday。
EEE:星期幾的簡寫,像是 Sun、Wed。
HH:24 小時制的時。
hh:12 小時制的時。
mm:分。
ss:秒。
Reference:
Source code on Github