@IBOutlet weak var playStopButton: UIBarButtonItem!
var playStopArray = [UIBarButtonSystemItem.Pause, UIBarButtonSystemItem.Play]
var index = 0
@IBOutlet weak var image: UIImageView!
@IBAction func playButton(sender: UIBarButtonItem) {
println("pressed")
playStopButton = UIBarButtonItem(barButtonSystemItem: playStopArray[index], target: self, action: "startMusic:")
println("here")
if index == 0 {
index = 1
}
else {
index = 0
}
}
func startMusic() {
println("test")
}
Я ожидал, что кнопка бара изменится на символ паузы, но без везения. Он печатает как «нажатые», так и «здесь», но «тест» не работает. Почему изображение не меняется?UIBarButton не меняется
Вы называете startMusic() где-нибудь? – ad121
Является ли playStopButton нил, когда вы идете выполнить задание? – jsd
Я не думаю, что ваш подход прямо здесь. Вам не нужно менять розетку. Ваш IBAction отправляет параметр отправителя. Просто используйте sender.setTitle (_: forState: .Normal), чтобы изменить текст на кнопке. – ad121