스위프트-밀리 초가있는 카운트 다운 타이머가 0에서 중지되지만 1 초가 남았습니다.

스피어 사마리아

밀리 초를 표시하는 카운트 다운 타이머와 실행되는 시간을 표시하는 레이블이 있습니다. 0에서 멈 추면 00 : 01.0을 표시 00:00.0하는 대신

내가 어디로 잘못 가고 있는지 알 수 없습니다.

weak var videoTimer: Timer?
var minutes = 2
var seconds = 0
var milliseconds = 0

func startTimer() {

    videoTimer?.invalidate()

    videoTimer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true, block: { [weak self] _ in
        self?.timerIsRunning()
    })
    RunLoop.current.add(videoTimer!, forMode: RunLoop.Mode.common)
}

func timerIsRunning() {

    let millisecStr = "\(milliseconds)"
    let secondsStr = seconds > 9 ? "\(seconds)" : "0\(seconds)"
    let minutesStr = minutes > 9 ? "\(minutes)" : "0\(minutes)"

    timerLabel.text = "\(minutesStr):\(secondsStr).\(millisecStr)"

    if seconds == 0 {

        if minutes != 0 {
            minutes -= 1
        }
    }

    if milliseconds == 0 {

        seconds -= 1
    }

    if seconds < 0 {

        seconds = 59
    }

    if minutes == 0 && seconds == 0 && milliseconds == 0 {

        print(minutes) // prints 0
        print(seconds) // prints 0
        print(milliseconds) // prints 0

        videoTimer?.invalidate()
    }

    milliseconds -= 1

    if milliseconds < 0 {

        milliseconds = 9
    }
}
자 와드 알리

.. 위의 밀리 초 함수를 사용하면 00:01.010 밀리 초가 남았습니다.

weak var videoTimer: Timer?
var minutes = 2
var seconds = 0
var milliseconds = 0

func startTimer() {

    videoTimer?.invalidate()

    videoTimer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true, block: { [weak self] _ in
        self?.timerIsRunning()
    })
    RunLoop.current.add(videoTimer!, forMode: RunLoop.Mode.common)
}

func timerIsRunning() {

    showTimer()

    if seconds == 0 {

        if minutes != 0 {
            minutes -= 1
        }
    }

    if milliseconds == 0 {

        seconds -= 1
    }

    if seconds < 0 {

        seconds = 59
    }
  milliseconds -= 1

    if milliseconds < 0 {

        milliseconds = 9
    }
    if minutes == 0 && seconds == 0 && milliseconds == 0 {

        print(minutes) // prints 0
        print(seconds) // prints 0
        print(milliseconds) // prints 0

        showTimer()

        videoTimer?.invalidate()
    }


}

func showTimer() {
 let millisecStr = "\(milliseconds)"
    let secondsStr = seconds > 9 ? "\(seconds)" : "0\(seconds)"
    let minutesStr = minutes > 9 ? "\(minutes)" : "0\(minutes)"

    timerLabel.text = "\(minutesStr):\(secondsStr).\(millisecStr)"
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

카운트 다운 타이머는 분과 초가 0 일 때 시간을 줄이지 않습니다.

분류에서Dev

카운트 다운 타이머에 초 추가

분류에서Dev

쿠키가있는 JavaScript 카운트 다운 타이머가 1 분 후에 중지됨

분류에서Dev

카운트 다운 타이머가 중지되지 않음

분류에서Dev

카운트 다운 타이머가 있는데 초와 분이 움직이지 않습니다.

분류에서Dev

분 / 초 카운트 다운 타이머가 작동하지 않습니까?

분류에서Dev

tkinter에서 카운트 다운 타이머가 업데이트되지 않음

분류에서Dev

자바 스크립트에서 카운트 다운 타이머가 다시 시작되지 않도록 중지

분류에서Dev

C에서 밀리 초 카운트 다운을 수행하는 가장 쉬운 방법은 무엇입니까?

분류에서Dev

1 초 간격으로 무언가 입력되었는지 확인하는 카운트 다운을 중단없이 어떻게 만들 수 있습니까?

분류에서Dev

자바 스크립트 카운트 다운 타이머에 분 또는 초를 추가 하시겠습니까?

분류에서Dev

오류 : 자바 스크립트 카운트 다운 타이머가 카운트 다운하지 않습니다.

분류에서Dev

JQuery 카운트 다운 타이머가 카운트 다운되지 않습니다.

분류에서Dev

ReactJs에서 타이머 / 카운트 다운 코드를 만드는 데 문제가 있습니다.

분류에서Dev

0에서 중지 및 재설정되는 카운트 다운 타이머

분류에서Dev

타이머가 0으로 카운트 다운하면 양식이 제출되지 않습니다.

분류에서Dev

jQuery 360 카운트 다운-타이머가 실행되는 동안 초를 추가하는 버튼

분류에서Dev

카운트 다운 타이머 카운터가 작동하지 않음

분류에서Dev

플래시에서 카운트 다운 타이머를 만드는 동안 오류가 발생했습니다.

분류에서Dev

전화기 화면이 잠기면 카운트 다운 타이머가 똑딱 거리지 않습니다

분류에서Dev

카운트 다운 타이머가 작동하지 않습니다.

분류에서Dev

카운트 다운 타이머가 작동하지 않습니다.

분류에서Dev

카운트 다운 타이머에 형식 시간 / 분 / 초를 추가하는 방법

분류에서Dev

자바 스크립트 함수 : 카운터는 1 초마다 점진적으로 카운트되어야하며 주어진 숫자에 도달하면 카운터가 중지되어야합니다.

분류에서Dev

Vue 카운트 다운 타이머가 console.log에 인쇄되지만 데이터로 전달되지 않습니다.

분류에서Dev

30 초 카운트 다운 타이머 "백만장자가되고 싶은 사람"netbeans

분류에서Dev

0에서 IOS 중지 카운트 다운 타이머

분류에서Dev

타이머가 올바르게 카운트 다운되지 않음

분류에서Dev

반응 후크가있는 카운트 다운 타이머

Related 관련 기사

  1. 1

    카운트 다운 타이머는 분과 초가 0 일 때 시간을 줄이지 않습니다.

  2. 2

    카운트 다운 타이머에 초 추가

  3. 3

    쿠키가있는 JavaScript 카운트 다운 타이머가 1 분 후에 중지됨

  4. 4

    카운트 다운 타이머가 중지되지 않음

  5. 5

    카운트 다운 타이머가 있는데 초와 분이 움직이지 않습니다.

  6. 6

    분 / 초 카운트 다운 타이머가 작동하지 않습니까?

  7. 7

    tkinter에서 카운트 다운 타이머가 업데이트되지 않음

  8. 8

    자바 스크립트에서 카운트 다운 타이머가 다시 시작되지 않도록 중지

  9. 9

    C에서 밀리 초 카운트 다운을 수행하는 가장 쉬운 방법은 무엇입니까?

  10. 10

    1 초 간격으로 무언가 입력되었는지 확인하는 카운트 다운을 중단없이 어떻게 만들 수 있습니까?

  11. 11

    자바 스크립트 카운트 다운 타이머에 분 또는 초를 추가 하시겠습니까?

  12. 12

    오류 : 자바 스크립트 카운트 다운 타이머가 카운트 다운하지 않습니다.

  13. 13

    JQuery 카운트 다운 타이머가 카운트 다운되지 않습니다.

  14. 14

    ReactJs에서 타이머 / 카운트 다운 코드를 만드는 데 문제가 있습니다.

  15. 15

    0에서 중지 및 재설정되는 카운트 다운 타이머

  16. 16

    타이머가 0으로 카운트 다운하면 양식이 제출되지 않습니다.

  17. 17

    jQuery 360 카운트 다운-타이머가 실행되는 동안 초를 추가하는 버튼

  18. 18

    카운트 다운 타이머 카운터가 작동하지 않음

  19. 19

    플래시에서 카운트 다운 타이머를 만드는 동안 오류가 발생했습니다.

  20. 20

    전화기 화면이 잠기면 카운트 다운 타이머가 똑딱 거리지 않습니다

  21. 21

    카운트 다운 타이머가 작동하지 않습니다.

  22. 22

    카운트 다운 타이머가 작동하지 않습니다.

  23. 23

    카운트 다운 타이머에 형식 시간 / 분 / 초를 추가하는 방법

  24. 24

    자바 스크립트 함수 : 카운터는 1 초마다 점진적으로 카운트되어야하며 주어진 숫자에 도달하면 카운터가 중지되어야합니다.

  25. 25

    Vue 카운트 다운 타이머가 console.log에 인쇄되지만 데이터로 전달되지 않습니다.

  26. 26

    30 초 카운트 다운 타이머 "백만장자가되고 싶은 사람"netbeans

  27. 27

    0에서 IOS 중지 카운트 다운 타이머

  28. 28

    타이머가 올바르게 카운트 다운되지 않음

  29. 29

    반응 후크가있는 카운트 다운 타이머

뜨겁다태그

보관