我正在尝试在Swift中对图像进行视差效果。
但是,当您前后倾斜手机时,图像不会改变,所以看起来好像是从另一个角度看(我认为是视差效果),图像只是向左,向右移动,倾斜时,在背景下向上移动。这不是我想要的。我希望图像在背景上保持静止。谁能建议一种在图像静止的情况下获得视差效果的方法。
图像是tableviewCell中的UIImageView。它是在带有出口的情节提要中创建的,并且受高度,宽度(每个40pts)和单元内的约束。
这是视差代码:
func addParallaxToView(vw: UIView) {
let amount = 100
let horizontal = UIInterpolatingMotionEffect(keyPath: "center.x", type: .tiltAlongHorizontalAxis)
horizontal.minimumRelativeValue = -amount
horizontal.maximumRelativeValue = amount
let vertical = UIInterpolatingMotionEffect(keyPath: "center.y", type: .tiltAlongVerticalAxis)
vertical.minimumRelativeValue = -amount
vertical.maximumRelativeValue = amount
let group = UIMotionEffectGroup()
group.motionEffects = [horizontal, vertical]
vw.addMotionEffect(group)
}
在自定义单元格类中使用以下命令调用
: addParallaxToView(vw: cellImageView)