我有一个旋转框的功能,可以正常工作。当用户完成旋转时,我想将父视图放到旋转的框中,但它只是完全不成比例,我不知道为什么,因为我只是在旋转后的视图和父视图之间交换了尺寸和属性。变换使尺寸不同
旋转:
func rotateThisView(gesture : UIRotationGestureRecognizer){
if activated {
if gesture.state == .Began || gesture.state == .Changed {
wrapView.transform = CGAffineTransformRotate(wrapView.transform, gesture.rotation)
gesture.rotation = 0
}
}
}
如说这工作得很好,但是当用户完成编辑(旋转)我运行这个功能:
wrapPoints = wrapView.center
wrapDimensions = wrapView.frame
wrapRotation = wrapView.transform
print(wrapPoints, wrapDimensions, wrapRotation)
wrapView.frame = CGRect(x: 0, y: 0, width: wrapDimensions.width, height: wrapDimensions.height)
wrapView.transform = CGAffineTransformIdentity
wrapView.center = center
frame = CGRect(x: 0, y: 0, width: wrapDimensions.width, height: wrapDimensions.height)
center = wrapPoints
transform = wrapRotation
而这正是一切失控的比例。我已经包含了两个截图来展示最新进展。父视图变大,旋转的视图变得异常大。
希望有人能帮助我。
你真的想改变它的框架与它的上海华? –
是的,这是一个自定义的UIView类 – Imbue