The Final Countdown學測計時器

世界末日太可怕了,還是來改為莘莘學子寫成「The Final Countdown學測倒數計時計」,搭配使用「How to Use Fuck 計時器」,試卷在手,雙器同用、雙APP同開,一定能在炎炎夏日為學子們,帶來達左倚天、右屠龍的上乘功效!

首先一開始一定要配合此APP的命名、搭配服用這首Europe合唱團的The Final Countdown(為了怕現在小朋友不知道這個80年代天團,特別加入連結) 記得最後大聲跟唱副歌 “It’s a Final Countdown!” 一口氣衝出、提振士氣,然後考完就可以去歐洲玩了(並沒有)。

廢話結束,正文開始。

本來覺得這個作業我應該可以自己寫得出來,但是一下去寫才發現呃…我真的想太多了。

以下就解釋一下卡關的過程,時間有三個: Goal/Now/Interval(Goal to Now間隔)

1. 一開始其實只寫出了Now

let now = Date()let formatter = DateFormatter()formatter.dateFormat = "yyyy MM dd"let time = formatter.string(from: now)self.nowTextField.text = time

2. 然後看了 學長姊的『簡易說明Xcode』Object Library的Date Picker , 歪打正著地寫出了Goal.

goal = sender.dategoalTextField.text = formatter.string(from: myDatePickerValue.date)

3. 最後在Peter的臨門一腳之下,用timeIntervalSince寫出了Interval

let interval = goal.timeIntervalSince(now)

6. 使用date picker run時發現goal&now兩造時間位置放(如圖)

7. 同時想到倒數計時器時間應該不能往後,會變負數,一問原來要這樣加

override func viewDidLoad() {myDatePickerValue.minimumDate = Date()

8. 另外,print(interval)明明有跑出來,但模擬器卻沒有, 原來需要加上了這行,讓intervalTextField變Text.

intervalTextField.text = ("\(interval)")

9. 然後interval是秒數,要把它換成分/時/日

intervalTextField.text = ("\(interval/60/60/24)")

9. 雖然換出date, 但是日期不會有浮點數, 用Int讓它變整數

let integerinterval = Int(interval/60/60/24)

10. 最後是這個問題:發現interval除完了不知道為什麼要加1才對,原來因為不整除。

let integerinterval = Int(interval/60/60/24+1)

歪打正著終於寫出來了!

綜合以上十點,我到底是哪來的自信覺得自己寫得出來啊!還好有Peter出手。雖然我擠牙膏般地問訊過程十分惱人,但確實這樣才能把觀念搞清楚啊!

就讓值日生蘇菲亞來為您示範一下,希望莘莘學子們都能在炎炎夏因用這個APP Final coutdown打敗指考、會考、學測大怪獸們!

This is my Github

--

--