如何根据swift 4或5中的图像大小使图像视图高度和宽度(纵横比)动态? [关闭]

Posted

技术标签:

【中文标题】如何根据swift 4或5中的图像大小使图像视图高度和宽度(纵横比)动态? [关闭]【英文标题】:How to make image View Height and width (Aspect Ratio) dynamic according to the image size in swift 4 or 5? [closed] 【发布时间】:2022-01-04 06:34:15 【问题描述】:

我有一个集合视图,我在其中填充从后端获取的图像。我正在使用 AutoLayout,并且我已将图像视图的高度静态设置为 180,将宽度设置为屏幕宽度。但我了解到,每张图片都有不同的高度和宽度,这是我从后端获得的。那么,如何设计我的图像视图,以便我可以以原始大小显示图像?

【问题讨论】:

下一个应该会有帮助:***.com/a/65302085/14733292 【参考方案1】:

首先,去掉imageView上设置的高宽约束

接下来,将图像视图的前导、尾随、顶部、底部约束设置为 0。

您可以通过下面的代码获取图片大小。

let image = UIImage(named: "spider.jpeg")
let imageSize = image?.size

如下通过图片大小设置单元格大小

extension ViewController: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout 
    
    ...
    
func collectionView(_ collectionView: UICollectionView, layout    collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize 
        return yourImageSize
    

【讨论】:

以上是关于如何根据swift 4或5中的图像大小使图像视图高度和宽度(纵横比)动态? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

允许滚动视图的高度根据图像大小而改变

Swift 如何使 UIView 大于手机屏幕-我们可以让它的大小与图像大小相同然后缩小

如何在swift中使背景视图透明但图像不透明[关闭]

Objective c 如何根据图像大小缩放图像视图大小(高度)

如何通过 Swift 中的图像视图创建自定义文本字段

如何使用 swift 将相同的背景图像添加到我的 ios 应用程序中的所有视图?