выглядит как анимация не моя специальность:/Поворот BarButtonItem на 45 градусов (анимированные)
В моей навигационной панели у меня есть обычай BarButtonItem, плюс, чтобы добавить товар в список. Я хотел повернуть плюс на 45 градусов, чтобы он стал X, когда он был нажат, и затем работает как кнопка отмены.
Я добавил кнопку, как настраиваемое представление в BarButtonItem делая это:
@IBOutlet weak var addQuestionaryButton: UIBarButtonItem!
{
didSet {
let icon = UIImage(named: "add")
let iconSize = CGRect(origin: CGPoint.zero, size: icon!.size)
let iconButton = UIButton(frame: iconSize)
iconButton.setBackgroundImage(icon, for: .normal)
addQuestionaryButton.customView = iconButton
iconButton.addTarget(self, action: #selector(QuestionaryListViewController.addClicked(_:)), for: .touchUpInside)
}
}
Это, кажется, работает хорошо. Теперь при нажатии на кнопку я делаю следующее:
UIView.animate(withDuration: 0.5, animations:{
self.addQuestionaryButton.customView!.transform = CGAffineTransform(rotationAngle: CGFloat(M_PI_4))
})
Я могу видеть кнопку начинает вращаться, но так или иначе он становится полностью деформирована. Смотрите фотографии для этого:
До:
После:
Я не понимаю, почему это происходит. Как правильно анимировать BarButtonItem?
Заранее спасибо.
Привет
Привет извините за поздний ответ, у меня был напряженный уик-энд. Я попробую сегодня вечером и дам вам знать. Спасибо. –
@Hardcore_Graverobber NVM, добавленный код примера FYI – jokeman
Очень хорошо, спасибо, что отлично работали. Все еще интересно, почему это не сработало, но теперь это хорошо! –