【发布时间】:2018-01-28 19:04:26
【问题描述】:
我已经构建了自己的动画引擎,我想在渲染的每一帧上设置 UI 视图的旋转 (60fps)
我现在制作了一个视频来展示当前的问题。
它相当接近,但它仍在以一种奇怪的方式旋转:
https://www.youtube.com/watch?v=1ZKK4r0-6i4
我已经实现了一个自定义的 CustomUIView 类,它继承自 UI 视图。这具有平移、缩放和旋转属性,所以当我变换矩阵时,所有 3 个都发生在同一个动作中。
var t = CGAffineTransform( translationX: self.translation.x, y:
self.translation.y );
// Apply scaling
t = t.scaledBy( x: self.scaling.x, y: self.scaling.y );
// Apply rotation
t = t.rotated(by:self.rotation)
self.transform = t
大小和宽度设置如下:
view.frame.size.width = parseSize(value, axis: "width")
view.layer.bounds.size.width = parseSize(value, axis: "width")
我正在尝试设置这两个属性,但我不确定这是否正确。
我已经设置了很多锚点,也尝试了视图的整体中心点。
【问题讨论】:
-
我认为这几乎完全是我的问题,但我太累了,现在无法让它工作。我不断移动和旋转这些视图 - stackoverflow.com/questions/5973562/uiview-rotation-movement
-
这似乎完美地暗示了这个问题,但没有一个答案有帮助。我根本没有使用界面生成器,这是一个 100% 的程序化项目 - stackoverflow.com/questions/22173350/…
标签: ios swift uiview graphics uikit