gpt4 book ai didi

ios - 快速更改 UIImageView 的位置

转载 作者:行者123 更新时间:2023-11-29 01:48:57 24 4
gpt4 key购买 nike

我正在通过代码添加 ImageView ,并将图像宽高比设置为 ScaleAspectFit。

我无法开始工作的是图像的顶部空间/约束。我希望将图像设置在顶部的特定空间,同时保持 ScaleAspectFit。

当您在图像之间滑动时,所有图像都有不同的顶部位置,这看起来很奇怪。

我的结构是页面 View Controller > ScrollView 。为了给图像添加缩放。

添加图片的代码:

imageView.frame = CGRectMake(0, 0, scrollView.frame.size.width, scrollView.frame.size.height)
imageView.contentMode = .ScaleAspectFit
imageView.url = imageFileName?.toURL()
imageView.userInteractionEnabled = true

scrollView.addSubview(imageView)

这是显示问题的打印屏幕。我想要做的是始终使顶部的黑色空间具有与所有图像相同的高度。使它们都有相同的顶部空间。

enter image description here

最佳答案

您可以使用 .ScaleAspectFill 而不是使用 .ScaleAspectFit,它保证图像始终完全填充 View 。那么所有 ImageView 的顶部都不会有不均匀的空白区域。

如果您必须具有 .ScaleAspectFit 行为,那么您可以计算图像的“纵横比”框架并手动设置其框架,使其适合并顶部对齐:

import AVFoundation
...
let aspectRatio = imageView.image.size.width / imageView.image.size.height
let aspectRect = AVMakeRectWithAspectRatioInsideRect(aspectRatio, scrollView.bounds)
imageView.frame = CGRectMake(0, 0, aspectRect.size.width, aspectRect.size.height)

关于ios - 快速更改 UIImageView 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31627525/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com