【发布时间】:2016-03-24 14:26:16
【问题描述】:
我正在尝试创建一个 iOS 触发应用程序,如果在应用程序被武装时触发,它会发送一个信号。我已经生成了触发时要发送的信号以及一个将应用程序从武装变为非武装的按钮。
当我触摸使应用程序启用的按钮时,它会进入一个 while 循环,该循环运行监听以查看应用程序是否已被触发,并在触发时发送信号。但是,通过这样做,我无法触摸现在说解除应用程序的按钮。这是我目前所拥有的:
var trigger = AVAudioPlayer()
func playMySound(){
let triggerSoundURL = NSBundle.mainBundle().URLForResource("trigger", withExtension: "wav")!
trigger = try! AVAudioPlayer(contentsOfURL: triggerSoundURL)
trigger.prepareToPlay()
trigger.play()
}
var armed = 0
@IBAction func arm() {
if(armed==0){
armed=1
armButton.setTitle("Armed", forState: .Normal)
triggering();
}
else{
armed=0
armButton.setTitle("Arm", forState: .Normal)
}
}
func triggering() -> Void {
while(armed==1){
playMySound()
arm()
}
}
【问题讨论】:
标签: ios swift multithreading while-loop