2017-10-18 23 views
1

私はカウントダウンの最後にユーザーに通知するためにこのコードを複数の "点滅"を生成しようとしています。今は1回のフラッシュでうまく動作しますが、理想的には3つ好きです。 Iveはコードを複製し、関数をループに入れて無駄にしようとしました。点滅画面の作り方_ swift 3

ありがとうございました!

// フラッシュ機能

func flash() { 
    if let wnd = self.view{ 

     var v = UIView(frame: wnd.bounds) 
     v.backgroundColor = UIColor.black 
     v.alpha = 1 

     wnd.addSubview(v) 
     UIView.animate(withDuration: 1.618, animations: { 
      v.alpha = 0.0 
     }, completion: {(finished:Bool) in 
      print("inside") 
      v.removeFromSuperview() 
     }) 
    } 
} 

フラッシュ機能の// 使用

if (heatUpSeconds == 0) { 
     heatUpTimer.invalidate() 
     // testing screen flashing ideas here cameraView.frame 

     flash() 
+2

ちょうどあなたの完了のブロックから再びあなたのフラッシュ関数を呼び出します。カウンターを使用して、既に何回フラッシュしたかを記録しておきます。 –

答えて

-1
var timer:Timer! 

timer = Timer.scheduledTimer(timeInterval: delayBetweenFlashes, target: self, selector: #selector(self.flash), userInfo: nil, repeats: true) 
+3

あなたの答えに簡単な説明を加えてください。 –

+0

タイマーをどのように初期化したかわかりませんが、「繰り返し」が本当であることを確認しましたか?いくつかの開発者は間違ってタイマーオブジェクトを、決して発動しないか、または発生しないが反復しない間違った方法で初期化します。私のコードを使って繰り返しているのですか? –

関連する問題