185*_*.41 0 cgaffinetransform cgpoint ios swift
我正在尝试使用更改视图位置,CGAffineTransform但转换语句不会影响它。
例如,让我们调用移动的视图movingView:
一开始,movingView是在点CGPoint(x: 100, y: 100)
然后我移动movingView通过这样的代码:
movingView.transform = CGAffineTransform(translationX: 100, y: 300)
Run Code Online (Sandbox Code Playgroud)
现在如果我这样做 : print(movingView.layer.position),我仍然得到
CGPoint(x: 100, y:100)
代替
CGPoint(x: 200, y: 400)
对视图(或图层)应用变换不会更新其中心位置(或位置)。它会改变视图(或层)在屏幕上的显示方式和位置,但不会改变其center、(或position)或bounds属性的值。
如果您想知道点如何受到平移的影响,则可以通过对其应用变换来计算新点:
let point = CGPoint(x: 100, y: 200)
let transform = CGAffineTransform(translationX: 20, y: 40)
let transformedPoint = point.applying(transform) // x: 120, y: 240
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
885 次 |
| 最近记录: |