Изменить изображение кнопки при выполнении анимации в Swift 4 - PullRequest
0 голосов
/ 10 января 2019

Следующий код успешно анимирует четыре кнопки, которые выходят из-за playButton. Проблема, с которой я сталкиваюсь, возникает при попытке изменить изображение playButton после его нажатия. Код, отмеченный внизу, изменит изображение кнопки, но по какой-то причине он также меняет анимацию. Я, очевидно, не хочу, чтобы анимация была обратной, и не могу придумать, как это исправить. Какие-либо предложения?

 override func viewDidLayoutSubviews() {

    spanishButtonCenter = spanishButton.center
    italianButtonCenter = italianButton.center
    frenchButtonCenter = frenchButton.center
    germanButtonCenter = germanButton.center

    spanishButton.center = playButton.center
    italianButton.center = playButton.center
    frenchButton.center = playButton.center
    germanButton.center = playButton.center
}

@IBAction func playClicked(_ sender: UIButton) {

    if playButton.currentImage == UIImage(named: "play_button") {
        UIView.animate(withDuration: 0.8, animations: {
            self.spanishButton.alpha = 1
            self.italianButton.alpha = 1
            self.frenchButton.alpha = 1
            self.germanButton.alpha = 1


            self.spanishButton.center = self.spanishButtonCenter
            self.italianButton.center = self.italianButtonCenter
            self.frenchButton.center = self.frenchButtonCenter
            self.germanButton.center = self.germanButtonCenter


        })
    }
    //playButton.setImage(UIImage(named: "play_clicked"), for: .normal)
}
...