#40 倒數計時 — Date Picker 和 Date 的練習

目的: 學習使用 Date Picker,Date 和將 Date 變成字串。

就算世界末日,我們還是要寫 App ! 在世界末日來臨之前,讓我們用最後的力量完成倒數計時 App 吧。

用 Date Picker 設定世界末日的時間,點選現在時間的按鈕更新現在時間。在畫面上顯示世界末日的時間,現在時間和距離世界末日還有幾天幾小時幾分幾秒。

ps: 不一定要做世界末日,比方也有同學做學測倒數計時,電影上映的倒數計時等。

進階功能

搭配 timer 持續更新現在時間和倒數的時間。

恐怖版

提示

顯示時間選擇的元件

利用 Date Picker。

取得現在時間

let now = Date()

時間轉字串 ( Date to String)

可利用 DateFormatter 將 Date 變成 String,然後再用 DateFormatter 的 dateFormat 設定字串的格式。

範例

let now = Date()
let formatter = DateFormatter()
formatter.dateFormat = "yyyy MM dd"
let dateString = formatter.string(from: now)

結果

2018 07 14

關於 dateFormat 的格式,可參考以下連結。

從 Date Picker 取得選取的時間

計算兩個 Date 相差的秒數

timeIntervalSince(_:)

假設變數 date1 & date2 的型別都是 Date,以下程式可得到相差的秒數。

let interval = date1.timeIntervalSince(date2)

有興趣的也可進一步研究以下計算 Date 相差時間的方法

dateComponents(_:from:to:)

若想生成特定時間的 Date,則可參考以下連結

作品集

--

--

彼得潘的 iOS App Neverland
彼得潘的 100 道 Swift iOS App 謎題

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com