Я хочу повернуть UITabBarItem
изображение при нажатии на это. Я использовал приведенный ниже код в viewDidLoad
методе UITabBarController
let plusView2 = self.tabBar.subviews[1]
self.SecondItemImageView = plusView2.subviews.first as? UIImageView
self.SecondItemImageView.contentMode = .center
let pluseView3 = self.tabBar.subviews[2]
self.ThirdItemImageView = pluseView3.subviews.first as? UIImageView
self.ThirdItemImageView.contentMode = .center
и использовал приведенный ниже код для анимации вращения
public override func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
if item.tag == 2 {
UIView.animate(withDuration: 0.2, delay: 0.1, options: .curveEaseIn, animations: {
self.SecondItemImageView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi))
UIView.animate(withDuration: 0.1, delay: 0.1, options: .curveEaseIn, animations: {
self.SecondItemImageView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi * 2))
}, completion: nil)
}) { (done) in
}
}
else if item.tag == 3 {
UIView.animate(withDuration: 0.2, delay: 0.1, options: .curveEaseIn, animations: {
self.ThirdItemImageView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi))
UIView.animate(withDuration: 0.1, delay: 0.1, options: UIView.AnimationOptions.curveEaseIn, animations: { () -> Void in
self.ThirdItemImageView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi * 2))
}, completion: nil)
}) { (done) in
}
}
}
установить тег 2 и 3 в In Storyboard Now при нажатииНа тэге № 3 вращение изображения кнопки отлично работает, но для тэга № 2 изображение кнопки не вращается. один и тот же код, используемый для обоих элементов панели вкладок, одна работа другая нет. Кроме того, проверьте, когда нажатие на кнопку тега номер 2 переходит в состояние, если изображение не вращается.