如何使用Swift與NSTimer
進行倒計時?如何使用NSTimer進行倒計時?
回答
問題1:
@IBOutlet var countDownLabel: UILabel!
var count = 10
override func viewDidLoad() {
super.viewDidLoad()
var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("update"), userInfo: nil, repeats: true)
}
func update() {
if(count > 0) {
countDownLabel.text = String(count--)
}
}
問題2:
你都可以做。 SpriteKit是您用於場景,動畫等的SDK。簡單視圖應用程序是項目模板。他們不應該發生衝突
變量爲您定時器
var timer = 60
的NSTimer以1.0爲間隔
var clock = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: "countdown", userInfo: nil, repeats: true)
在這裏,您可以減少定時器
func countdown() {
timer--
}
太謝謝:)))))(Y) – 2015-03-31 17:47:36
應該是選擇器(「倒計時」) – Khuong 2016-03-12 03:22:21
@ khuong291:謝謝,我編輯了答案。 – 2016-03-13 21:16:55
在雨燕3.0,這將工作:
var counter = 30
override func viewDidLoad() {
super.viewDidLoad()
var _ = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(updateCounter), userInfo: nil, repeats: true)
}
func updateCounter() {
//you code, this is an example
if counter > 0 {
print("\(counter) seconds to the end of the world")
counter -= 1
}
讓倒計時程序的Xcode 8.1,斯威夫特3
import UIKit
import Foundation
class ViewController: UIViewController, UITextFieldDelegate {
var timerCount = 0
var timerRunning = false
@IBOutlet weak var timerLabel: UILabel! //ADD Label
@IBOutlet weak var textField: UITextField! //Add TextField /Enter any number to Countdown
override func viewDidLoad() {
super.viewDidLoad()
//Reset
timerLabel.text = ""
if timerCount == 0 {
timerRunning = false
}
}
//Figure out Count method
func Counting() {
if timerCount > 0 {
timerLabel.text = "\(timerCount)"
timerCount -= 1
} else {
timerLabel.text = "GO!"
}
}
//ADD Action Button
@IBAction func startButton(sender: UIButton) {
//Figure out timer
if timerRunning == false {
_ = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(ViewController.Counting), userInfo: nil, repeats: true)
timerRunning = true
}
//unwrap textField and Display result
if let countebleNumber = Int(textField.text!) {
timerCount = countebleNumber
textField.text = "" //Clean Up TextField
} else {
timerCount = 3 //Defoult Number to Countdown if TextField is nil
textField.text = "" //Clean Up TextField
}
}
//Dismiss keyboard
func keyboardDismiss() {
textField.resignFirstResponder()
}
//ADD Gesture Recignizer to Dismiss keyboard then view tapped
@IBAction func viewTapped(_ sender: AnyObject) {
keyboardDismiss()
}
//Dismiss keyboard using Return Key (Done) Button
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
keyboardDismiss()
return true
}
}
斯威夫特3
private let NUMBER_COUNT_DOWN = 3
var countDownLabel = UILabel()
var countDown = NUMBER_COUNT_DOWN
var timer:Timer?
private func countDown(time: Double)
{
countDownLabel.frame = CGRect(x: 0, y: 0, width: 300, height: 300)
countDownLabel.font = UIFont.systemFont(ofSize: 300)
countDownLabel.textColor = .black
countDownLabel.center = CGPoint(x: self.view.frame.width/2, y: self.view.frame.height/2)
countDownLabel.textAlignment = .center
self.view.addSubview(countDownLabel)
view.bringSubview(toFront: countDownLabel)
timer = Timer.scheduledTimer(timeInterval: time, target: self, selector: #selector(updateCountDown), userInfo: nil, repeats: true)
}
func updateCountDown() {
if(countDown > 0) {
countDownLabel.text = String(countDown)
countDown = countDown - 1
} else {
removeCountDownLable()
}
}
private func removeCountDownLable() {
countDown = NUMBER_COUNT_DOWN
countDownLabel.text = ""
countDownLabel.removeFromSuperview()
timer?.invalidate()
timer = nil
}
- 1. 如何進行倒計時?
- 2. 使用NSTimer創建倒計時
- 3. 如何進行全球倒計時?
- 4. 如何使用NSDate運行倒計時?
- 5. 使用UIDatePicker在iOS中進行計時器倒計時
- 6. 進入倒計時
- 7. 用毫秒創建倒數計時器(NSTimer),但它不能正確倒計數
- 8. 如何使用倒計時jquery插件
- 9. 如何使倒計時運行在後臺使用eclipse
- 10. jQuery倒計時進度條
- 11. 如何在手錶併發症中進行倒計時?
- 12. 如何在對話框中進行倒計時,並在對話框再次打開時恢復倒計時
- 13. 如何在java(秒錶Java)中進行倒計時CountDown計時器
- 14. 使用倒數計時器
- 15. 倒計時使用圖像
- 16. 使用javascript的倒計時
- 17. 使用jQuery倒計時
- 18. 使用一個倒計時腳本多個倒計時
- 19. 如何使一個jQuery的CSS的進度條(倒計時)?
- 20. 如何倒數計時器
- 21. 如何倒計時`MediaStore.EXTRA_DURATION_LIMIT`?
- 22. 如何停止倒計時
- 23. 蟒蛇如何使倒計時
- 24. 如何使倒數計時器重複
- 25. NSTimer天倒計時和發送到標籤
- 26. NSTimer在視圖控制器中倒計時
- 27. 不使用NSTimer製作計時器(swift)
- 28. 時間戳倒計時進入負面
- 29. 如何在列表完成計數後操作列表進行倒計時?
- 30. 執行倒計時js倒計時在php代碼
非常感謝:) – 2015-03-31 17:47:22
使用#selector斯威夫特(更新)2.2 – 2016-05-10 12:42:31