我正在开发一款具有外观和功能的Ui。感觉就像车辆的速度表,其具有从一端固定的针和一个针。与固定端旋转一定角度。 我为那个
做了一些代码self.SIV_Needle.transform =CGAffineTransformMakeRotation((CGFloat(M_PI_2)/180.0) * 80)
它的工作但imageView失去了原来的x&从一端开始坐标。我尝试了很多东西,比如改变锚点,中心但是看起来效果不好。
答案 0 :(得分:2)
回应我的评论,OP表示问题是控件没有围绕所需的轴旋转。 OP(我认为)并不清楚所需轴是什么,也不是当前轴是什么(我使用轴可互换地表示枢轴点)。有一些可能的修复。
1)这个针的东西是一个ImageView,所以你可以做一个简单的黑客,只是让你的图像更大或更小来固定旋转。解释一下:如果您的针头绕针的中心而不是球部分旋转,那么只需将图像的宽度加倍,这样针头只会占据右侧,因此“#34;针的是枢轴点。
2)将变换的anchor属性设置为您想要旋转的位置。见this similar SO问题&答案。
答案 1 :(得分:0)
你需要翻译用户界面,以补偿由于骚动而导致的位置变化
答案 2 :(得分:0)
尝试更改针imageView的定位点,然后添加旋转。我没试过,但我认为它应该有用。
答案 3 :(得分:0)
您可以将您的图片图像放在所需位置的UIView中并旋转主UIView来存档。
等;
let myView:UIIView = UIIView(); //set frame of UIView
let pinImgView:UIVImageView(); // set pin image and frame of required position
//--
myView.addSubview(pinImgView);
//--
myView.transform =CGAffineTransformMakeRotation((CGFloat(M_PI_2)/180.0) * 80);
我为此制作了一个示例项目。你可以从中得到想法; http://www.filedropper.com/stackover 要么 http://wikisend.com/download/263926/StackOver.zip