尝试在 ScrollView 向下弹跳时使 UIImageView 缩放。
这个想法是从这个运球中偷来的:https://dribbble.com/shots/3341878-Product-Page
如你所见,图像就像' ScrollView 向下弹跳时的缩放。
在我的应用程序中,我在 UIScrollview 中有 UIImageView,我不明白如何在 UIScrollvview 向下弹跳时修复 UIImageView 的顶部。
这是我想做的:
最佳答案
根据 ScrollView 的偏移量对 imageView 应用缩放变换:
extension ViewController: UIScrollViewDelegate {
public func scrollViewDidScroll(_ scrollView: UIScrollView) {
let offset = scrollView.contentOffset
if offset.y < 0.0 {
var transform = CATransform3DTranslate(CATransform3DIdentity, 0, offset.y, 0)
let scaleFactor = 1 + (-1 * offset.y / (imageViewHeightConstraint.constant / 2))
transform = CATransform3DScale(transform, scaleFactor, scaleFactor, 1)
imageView.layer.transform = transform
} else {
imageView.layer.transform = CATransform3DIdentity
}
}
}
通过这种方式,您无需将其“固定”到顶部,imageView 将随着弹跳时内容偏移量的减少而简单地放大。您所需要的只是您的 imageView 具有顶部约束(加上前导、尾随)和高度。
关于ios - 固定顶部的 UIScrollview 弹跳和缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46726487/