我有一个水平滚动视图与一个图像,我需要旋转,因为用户滚动左或右。当用户在屏幕上移动滚动条时,它需要旋转。因此,如果用户滚动到一半并停止,图像应该旋转到一半,等等。我看了几个例子,但似乎没有给出正确的结果。有人能帮帮忙吗。
提前感谢
发布于 2016-08-09 07:30:52
您需要实现scrollViewDidScroll方法,然后对图像应用旋转矩阵。要旋转UIIMage,您可以执行此处概述的操作。How to Rotate a UIImage 90 degrees?
然而,这将在平移手势识别器中更好地完成。平移手势将向您提供有关用户平移的距离的信息,然后您可以根据该距离旋转图像。
发布于 2016-08-09 08:05:35
旋转图像对性能不好。你最好在用户滚动时设置图像视图的旋转变换。如下所示:
imageView.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2))发布于 2019-11-13 15:32:02
垂直滚动和Swift 5:
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let topOffset = scrollView.contentOffset.y
let angle = -topOffset * 2 * CGFloat(Double.pi / 180)
self.myImageView.transform = CGAffineTransform(rotationAngle: angle)
}不要忘记在viewDidLoad中执行此操作
self.scrollView.delegate = selfhttps://stackoverflow.com/questions/38839864
复制相似问题