개발자 코드(Code)/Swfit

IOS) PickerDate Quiz 빨간색 + 파란색

Chain X 2020. 8. 26. 00:58
728x90
반응형

012
현재 시간과 선택시간이 Today에서 같을 경우 1초 간격으로 빨간색, 파란색이 출력된다.

//
//  ViewController.swift
//  Quiz07
//
//  Created by Leo_Jang on 25/08/2020.
//  Copyright © 2020 Leo_Jang. All rights reserved.
//

import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var lblCurrentTime: UILabel!
    @IBOutlet weak var lblPickerTime: UILabel!
    
    let timeSelector: Selector = #selector(ViewController.updateTime)
    let interval = 1.0  // 기준값
    var count = 0 // 빨간색 또는 파란색인지
    var alarmTime: String? // 타임 부분만 빼올려고 하나 만든 것.
    
    

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        // 1. 현재시간을 넣는다. Timer.sch->select가 있는 걸 선택한다.
        Timer.scheduledTimer(timeInterval: interval, target: self, selector: timeSelector, userInfo: nil, repeats: true) // reapeat가 false 이면 한번에 죽는다.
    
    }
    @IBAction func tableDatePicker(_ sender: UIDatePicker) {
        let datePickerView = sender
        let formatter = DateFormatter()
        formatter.dateFormat = "yyyy-MM-dd HH:mm EEE"  //화면에 띄우는 것
        lblPickerTime.text = "선택시간 : " + formatter.string(from: datePickerView.date) //화면에 띄우는 것
        alarmTime = formatter.string(from: datePickerView.date) // 알람타임에 시간만 넣었다.
        
    }
    @objc func updateTime(){
        //현재시간은 계속 움직이고 있다.
        count += 1// 빨간색 파란색을 보이기 위한 것
        
        let date = NSDate()
        let formatter = DateFormatter()
        formatter.dateFormat = "yyyy-MM-dd HH:mm EEE"
        lblCurrentTime.text = "현재시간 : " + formatter.string(from: date as Date)
        
        let currentTime = formatter.string(from: date as Date)
        if alarmTime == currentTime{
            if count % 2 == 0{
                view.backgroundColor = UIColor.red      // 1 초 간격으로 빨간색 배경화면이 뜬다.
            }else{
                view.backgroundColor = UIColor.blue     // 1초 간격으로 파란색 배경화면이 뜬다.
            }
        }else{                                 // 같지 않을 경우
            view.backgroundColor = UIColor.white         // 흰색 배경화면
        }
    }
}

 

반응형