2016-09-22 6 views
0

特定の回数押した後にユーザーが押した回数をカウントし、別の音をアクティブにするボタンを作成するにはどうすればよいですか?何回押したのかをカウントし、別の機能を有効にするボタンを作成する方法

@IBAction func button(_ sender: UIButton) { 
     var buttonCount: Int 

     buttonAnim.startCanvasAnimation() 
     let path = Bundle.main.path(forResource: "test", ofType:"wav")! 
     let url = URL(fileURLWithPath: path) 

     let path2 = Bundle.main.path(forResource: "stop-it", ofType:"mp3")! 
     let url2 = URL(fileURLWithPath: path2) 
     buttonCount = 0 
     buttonCount = buttonCount + 1 


     if buttonCount == 10 { 

      do { 
       let sound2 = try AVAudioPlayer(contentsOf: url2) 
       bombSoundEffect2 = sound2 
       sound2.play() 
      } catch { 
       // couldn't load file :(
      } 

     }else{ 

      do { 
       let sound = try AVAudioPlayer(contentsOf: url) 
       bombSoundEffect = sound 
       sound.play() 
      } catch { 
       // couldn't load file :(
      } 
     } 

    } 

ここに私のボタンのコードは、私はそれがint変数にアドオンとその変数が5に達したとき、それは自分自身をリセットしても、別のサウンドを再生します作るたいです。

編集:コードを編集しましたが、if部分は決して実行されません。

+0

、あなたのクラスのプロパティとして 'buttonCount'を定義する'ファンドボタンで更新(_差出人:UIButton)私は、コードを編集してきましたが、今ではと言う ' –

+0

もし部分が決して実行されないならば。なぜそうなの? –

+0

それは間違った仲間であり、私が言ったことではありません。大丈夫私はここに投稿します。 –

答えて

1

機能の外側にvar buttonCount = 0を宣言し、その状態のときに休憩します。

+1

うん、それは働いた、ありがとう! –

0
class ViewController: UIViewController { 

@IBOutlet weak var dateLabelOutlet: UILabel! 
var buttonCount: Int = 0 
@IBAction func button(_ sender: UIButton) { 

    buttonAnim.startCanvasAnimation() 
    let path = Bundle.main.path(forResource: "test", ofType:"wav")! 
    let url = URL(fileURLWithPath: path) 

    let path2 = Bundle.main.path(forResource: "stop-it", ofType:"mp3")! 
    let url2 = URL(fileURLWithPath: path2) 
    buttonCount = buttonCount + 1 


    if buttonCount == 10 { 

     do { 
      let sound2 = try AVAudioPlayer(contentsOf: url2) 
      bombSoundEffect2 = sound2 
      sound2.play() 
     } catch { 
      // couldn't load file :(
     } 

    }else{ 

     do { 
      let sound = try AVAudioPlayer(contentsOf: url) 
      bombSoundEffect = sound 
      sound.play() 
     } catch { 
      // couldn't load file :(
     } 
    } 

} 

}

関連する問題