Computer >> 컴퓨터 >  >> 프로그램 작성 >> IOS

Swift(iOS)에서 일정 간격 후에 반복적으로 작업을 반복하는 방법은 무엇입니까?

<시간/>

이 게시물에서 우리는 일정 간격 후에 작업을 반복하는 방법을 배울 것입니다.

이 예에서는 특정 시간 간격 후에 레이블을 반복적으로 업데이트합니다.

iOS에서는 이 작업을 수행하기 위해 Timer를 사용합니다. 시작하겠습니다

1단계 − Xcode 열기 → 새 프로젝트 → 단일 보기 응용 프로그램 → 이름을 "타이머"로 지정합니다.

2단계 − Main.storyboard를 열고 아래와 같이 레이블을 추가합니다.

Swift(iOS)에서 일정 간격 후에 반복적으로 작업을 반복하는 방법은 무엇입니까?

3단계 − 하단 레이블에 대해 하나의 @IBOutlet을 첨부합니다. 이름을 timerLabel로 지정합니다.

4단계 − 레이블에 앱이 시작된 이후의 초를 표시합니다. 따라서 다음과 같이 뷰 컨트롤러에서 두 개의 변수를 선언합니다.

var timeLaunched: Int = 0
var timer: Timer?

5단계 − 레이블을 업데이트하는 기능을 추가합니다. 이후에 이 함수를 일정한 간격으로 반복적으로 호출할 것입니다.

@objc func updateLabel() {
   timerLabel.text = " Time Launched = \(timeLaunched) Seconds "
   timeLaunched += 1
}

보시다시피 이 기능은 실행 시간을 증가시키고 레이블에 표시합니다.

6단계 − 타이머를 초기화하고 트리거합니다. ViewController의 viewDidLoad에서 타이머를 초기화하고 정기적으로 updateLabel 함수를 호출합니다. 여기서 우리는 1초마다 기능을 트리거합니다. 요구 사항에 따라 기능을 트리거할 수 있습니다.

override func viewDidLoad() {
   super.viewDidLoad()
   // Do any additional setup after loading the view, typically from a nib.
   updateLabel()
   timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: (#selector(ViewController.updateLabel)), userInfo: nil, repeats: true)
}

보시다시피 타이머를 초기화하고 '반복'을 true로 설정했습니다. 이것은 매초마다 updateLabel 함수를 호출할 것입니다.

앱을 실행하면 1초마다 업데이트되는 라벨을 볼 수 있습니다.

Swift(iOS)에서 일정 간격 후에 반복적으로 작업을 반복하는 방법은 무엇입니까?