旋转UIButton内的PNG图片

3

我在UINavigationBartitleView中放置了一个UIButton。 我想让一个向下的箭头图像在用户每次点击给定按钮时旋转180度。

enter image description here

1个回答

5

以下是使用Transforms实现的示例:- 该代码适用于所有从UIView继承的元素

UIView.animate(withDuration: 0.5) {
            self.yourButton.imageView?.transform = CGAffineTransform(rotationAngle: CGFloat.pi)

}

要将其恢复到原始位置:-
UIView.animate(withDuration: 0.5) {
      self.yourButton.imageView?.transform = .identity)

}

尽可能地完成。 - luke
@DarkInnocence 在问题发布后15分钟内不能接受答案。请耐心等待。 - Mr. Xcoder
抱歉Xcoder,我不知道那个.. 谢谢你的提示 :) - Dark Innocence
除了将其设置回原始旋转位之外,看起来很好。它应该是self.yourButton.imageView?.transform = CGAffineTransformIdentity180.0 * CGFloat(M_PI)) * 180.0会给出一些错误的角度。而且,将旋转角度设置为180 * pi / 180没有实际意义。只需将角度设置为CGFloat.pi即可。 - Duncan C
完全同意你的观点,这只是一些旧的API,因为我还记得Objective-C,所以我会再次编辑它。 - Dark Innocence
你有没有想过为什么将按钮的“UIImageView”旋转到不均匀的角度会导致扭曲?[视频] (https://monosnap.com/file/J8iB1HHq3UecTGxvnpJYKyFNy7eFPP) - Anton Lovchikov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接