我正在开发一个需要在一端旋转滑块的应用程序。但是,通过使用CGAffineTransformMakeRotation(),我只能在中心旋转滑块。
如何在终点处旋转滑块,我该怎么办?如果可能,请提供一小段示例代码。非常感谢。
答案 0 :(得分:4)
我通过为视图图层设置UIImageView
属性来轮换anchorPoint
。例如
myView.layer.anchorPoint = CGPointMake(0.5, 1.0);
然后将CATransform3DRotate
应用为图层的transform
属性
CATransform3D rotationTransform = CATransform3DIdentity;
rotationTransform = CATransform3DRotate(rotationTransform, positionInRadians, 0.0, 0.0, 1.0);
myView.layer.transform = rotationTransform;
我是从Apple的metronome示例中找到的,所以值得检查一下。希望有所帮助
答案 1 :(得分:1)
我第二次回答了问题。要使用CGAffineTransform执行您想要的操作,您必须编写转换,直到获得所需的效果:
CGAffineTransform transform = CGAffineTransformMakeRotation(1.0);
transform = CGAffineTransformTranslate(transform, slider.frame.size.width / 2, 0.0);
slider.transform = transform;