데이트 픽커뷰 이용해서 알람시계 구현
1.현재 시간이 선택시간과 같게 되면 1분동안 배경화면이 빨간색으로 변하게 만든다.
2.1분이 지나 시간이 달라지면 다시 정상적인 배경화면이 된다.
//
// ViewController.swift
// DatePicker2
//
// Created by MacBookPro on 2017. 12. 12..
// Copyright © 2017년 MacBookPro. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
//타이머가 구동되면 실행될 함수를 지정
let timeSelector: Selector = #selector(ViewController.updateTime)
//타이머가 구동되면 실행될 함수를 지정
let sixSelector: Selector = #selector(ViewController.sixTime)
//타이머 간격
let interval = 1.0
//타이머가 설정한 간격대로 잘 작동되는지 확인하기 위한 변수
var count = 0
//선택된 데이터 포멧
let selFormatter = DateFormatter()
@IBOutlet weak var lbCurrentTime: UILabel!
@IBOutlet weak var lbSelectTime: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
//타이머가 1초마다 구동될때 실행될 함수지정
Timer.scheduledTimer(timeInterval: interval, target: self, selector: timeSelector, userInfo: nil, repeats: true)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func datePicker(_ sender: UIDatePicker) {
//let datePickerView = sender
//selFormatter = DateFormatter()
selFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss EEE"
lbSelectTime.text = selFormatter.string(from: sender.date)
}
//1씩 증가하는 함수 (현재시간)
@objc func updateTime(){
//lbCurrentTime.text = String(count)
//count += 1
let date = NSDate()
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss EEE"
lbCurrentTime.text = formatter.string(from: date as Date)
if lbCurrentTime.text == lbSelectTime.text{
Timer.scheduledTimer(timeInterval: interval, target: self, selector: sixSelector, userInfo: nil, repeats: true)
}
}
@objc func sixTime(){
count += 1
if count < 60{
view.backgroundColor = UIColor.purple
}else if(count > 60) {
view.backgroundColor = UIColor.white
}
}
}
'ios 뽀개기 > ios 응용해보기' 카테고리의 다른 글
데이트 피커뷰와 alert이용해서 간단한 알람시계 구현 (0) | 2017.12.14 |
---|---|
두개의 피커 뷰 이용하기 (0) | 2017.12.13 |
유동적인 테이블뷰 2 (0) | 2017.12.13 |
유동적인 테이블 뷰 1 (0) | 2017.12.12 |
imageView와 배열을 이용한 사진 갤러리 (0) | 2017.12.12 |
댓글