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