根据 UIImageView 包含的图像快速缩小

标签 swift imageview

我有一个 UIImageView ,它和整个 View 一样大。当我插入图像时,我希望 ImageView 自行缩小,以便它与我插入的图像一样大。我找不到办法做到这一点。

最佳答案

假设您有一个像这样声明的 UIImageView ,您可以通过多种方法来解决此问题:

  @IBOutlet var dynamicImageView: UIImageView!
  1. 更改图像时,将 imageView 大小设置为 UIImage 的大小,例如:

    func changeImage(){
    
        if let image = UIImage(named: "Octocat"){
            dynamicImageView.image = image
            dynamicImageView.frame.size = image.size
            print("Size Of ImageView = \(dynamicImageView.frame.size)")
    
        }
    }
    
  2. 只需使用 .sizeToFit 方法,例如:

    func changeImageAgain(){
    
        if let image = UIImage(named: "Octocat"){
            dynamicImageView.image = image
            dynamicImageView.sizeToFit()
            print("Size Of ImageView = \(dynamicImageView.frame.size)")
    
        }
    }
    

在 iPhone 7 Plus 上运行时,UIImageView 大小最初为 (375,647),当应用任一方法时,大小会更改为 (800,665),与 GitHub OctoCat< 的大小相同:

enter image description here

关于根据 UIImageView 包含的图像快速缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49347295/

相关文章:

android - ImageView 位图缩放尺寸

Android:ImageView 禁用缩放

android - 如何将关闭的 ImageView 放在对话框的右上角并带有边距?

swift - 使用文件数组上传 MultipartFormData

swift - 从一个 View Controller 弹出到索引 0 的选项卡栏 View Controller

swift - 如何使用 Cloud Firestore 索引查询数据

Android 在工具栏中打开图像,例如 Whatsapp 配置文件

objective-c - 从 NSString 中提取表情符号(unicode)

html - 仅使用 iOS API 从 html 中提取 JSON 字符串

android - Scrollable ImageView Android 问题(过度滚动)