我已经尝试了很多选项来使用此代码,但我找不到合适的方法。我知道这个方法适用于UIButtons但是使用UIBarButtonItems似乎是不同的。
let validStrings = Set<String>(arrayLiteral:"ab", "bc", "cd")
if validStrings.contains(str) {
//do something
}
不起作用的代码行如下
@IBOutlet weak var stopOutlet: UIBarButtonItem!
@IBAction func stop(sender: AnyObject) {
if stopOutlet.selected {
player.stop()
} else {
player.play()
do {
try player = AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: audioPath))
} catch {
print("Unable to play the file. Please try another song")
}
}
}
是否有任何布尔值适用于UIBarButtonItems ???
我刚刚开始学习swift和Xcode,如果问题很蹩脚,那就很抱歉。
答案 0 :(得分:0)
您需要保持一些外部状态,以跟踪最后一次按下按钮的内容,或者更好地从audioPlayer的状态推断它。此状态还可用于驱动按钮显示的文本(播放/暂停)