2017年9月17日 星期日

SWIFT3 簡易電子時鐘 Date & Timer 運用


基於好奇加上有點時間所以就做了很簡單的電子時鐘,功能沒什麼就無聊多做了時間擷取的Button記錄按下當下的時間。

然後這顆按鈕還可以發揮其他功能,譬如按下後將時間等資料回傳資料庫等等...這些就不多說了。

介面方面很簡當,我使用了4個UILabel跟1個UIButton,畫面請看最後的範例圖摟。

因為code其實不是很多加上小弟已經在code中註解了,這邊就直接附上code給大家參考

import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var UserTimeLabel: UILabel!
    @IBOutlet weak var timerLabel: UILabel!
    
    var dateFormatter = DateFormatter()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        
        dateFormatter.dateStyle = .medium
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"//格式可以自定義例如可改成"yyyy/MM/dd-HH:mm:ss"
        //將時間轉換成字串(刻意多寫出來讓大家能夠清楚了解)
        let timeString = dateFormatter.string(from: Date(timeIntervalSinceNow: 0.0))
        timerLabel.text = timeString
        
        //時間的監聽(更新時間)
        Timer.scheduledTimer(timeInterval: 0.0, target: self, selector: #selector(ViewController.updateClock), userInfo: nil, repeats: true)
        
    }
    //更新時間
    func updateClock() {
        let now = Date()//獲取當前時間
        timerLabel.text = dateFormatter.string(from: now)
        
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    
    @IBAction func userBtn(_ sender: UIButton) {
        
        dateFormatter.dateStyle = .medium
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
        UserTimeLabel.text = dateFormatter.string(from: Date(timeIntervalSinceNow: 0.0))
        
    }
    

}

以上code直接以模擬其執行出來的效果如下



希望能夠幫助到剛好有需要的朋友們^^

沒有留言:

張貼留言