iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 8
0
Software Development

30天Swift入門學習系列 第 8

iOS App實作(7) ActivitySchedule(UIDatePicker)


Description:
UIDatePicker可以產生日期或時間選單讓使用者輸入日期或時間。
此demo包含兩個UIDatePicker,分別讓使用者選擇年月日及時間。並加上一個彈出視窗讓使用者確認時間選擇是否正確。


Component:

  1. UIDatePicker
  2. UIAlertController

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


上一篇
iOS App實作(6) WebSearch(WebView)
下一篇
iOS App實作(8) GPS定位-1 (Apple Map)
系列文
30天Swift入門學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言