2017-02-21 3 views
-4

私は10秒ごとに機能を実行する必要があります。しかし、私はどのように進むべきかわかりません。私はタイマーを使用する必要があることを知っているが、これのための有用なチュートリアルを見つけられませんでした。Swiftを使用してアクションをループするにはどうすればよいですか?

あなたはNSTimerと実行ループを使用してそれを行うことができ、あなたに

答えて

1

ありがとう:

func startTimer(){ 
     let timer = Timer.scheduledTimer(timeInterval: 10, target: self, selector: #selector(yourFunction), userInfo: nil, repeats: true) 

     RunLoop.current.add(timer, forMode: RunLoopMode.commonModes) 
    } 

    func yourFunction(){ 
     //doStuff 
    } 
+0

これは10秒以上繰り返されますか? – coopergamez

+0

@coopergamezはい、繰り返し属性はtrueです –

3

Doがthisをお読みください。

override func viewDidLoad() { 
    super.viewDidLoad() 
    //Swift 3 selector syntax 
    var timer = Timer.scheduledTimer(timeInterval: 0.4, target: self, selector: #selector(self.update), userInfo: nil, repeats: true); 
    //Swift 2.2 selector syntax 
    var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: #selector(MyClass.update), userInfo: nil, repeats: true) 
    //Swift <2.2 selector syntax 
    var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "update", userInfo: nil, repeats: true) 
} 

// must be internal or public. 
func update() { 
    // Something cool 
} 
関連する問題