ios - 图像未按尺寸显示

标签 ios swift imageview

我只想根据图像大小显示图像,如果图像高度大于宽度,则图像将水平显示,或者如果宽度大于高度,则图像将显示在中心。

我已经尝试过并且正在展示我的代码。我正在尝试什么?


override func viewDidLoad() {
        super.viewDidLoad()

        var profileImagesData:Array<UIImage> = []
        for i in 0..<profileImages.count {

       // for venueImageTemp  in profileImages {
            var statusDict = profileImages[i] as! Dictionary<String,Any>
            var imageUrl = String(format:"%@",statusDict["imageId"] as! CVarArg)
            print(imageUrl)

            if imageUrl.contains("cloudinary.com") {
                let imgNameArr = imageUrl.components(separatedBy: "upload/")
                print(imgNameArr)
                let subFisrtStr = imgNameArr[0]
                print(subFisrtStr)
                let subStr = imgNameArr[1]
                print(subStr)
                let subImgNameArr = subStr.components(separatedBy: "/")
                print(subImgNameArr)
                let subNameStr = subImgNameArr[1]
                print(subNameStr)
                imageUrl = ""

                imageUrl = subFisrtStr + "upload/h_600,w_600/" + subNameStr
                print(imageUrl)

            }

            let url = URL(string: imageUrl)
            print(url)
            let data = try? Data(contentsOf: url!) //make sure your image in this url does exist, otherwise unwrap in
            let image = UIImage(data: (data)!)
            profileImagesData.append(image!)
        }

        let imageView = CYCImageScrollView(images: profileImagesData, frame: CGRect(x: 0, y: 20, width: self.view.frame.size.width, height: self.view.frame.size.height-150), pageColor: UIColor.lightGray, currentPageColor: UIColor.orange)
//        imageView.layer.cornerRadius = 30
        imageView.backgroundColor = UIColor.clear

        imageView.contentMode = .scaleAspectFit
        imageView.clipsToBounds = true
        imageView.layer.masksToBounds = true

        self.view.addSubview(imageView)


    }


我只想根据它们的大小显示图像。

最佳答案

使用内容模式scaleAspectFill而不是scaleAspectFit

imageView.contentMode = .scaleAspectFill

关于ios - 图像未按尺寸显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56337215/

相关文章:

android - 选择 OpenGL ES 的适当错误

ios - 如何以编程方式将属性添加到现有的Core Data实体(对象)?

swift - 我是 swift 的绝对初学者。我不知道我的代码输出有什么问题,这是基于变异方法

android - 应用启动后 Imageview 可见 3 秒

java - 将ImageView保存到sdcard android

android - 设置ImageView自动高度取决于图片宽度

ios - 使用 OpenGL ES 2 着色器重新实现的 GLImageProcessing 的性能问题

ios: NSMutableArray 计数在添加对象后打印零?

php - 如何将验证错误从 php 或 segue 成功返回到 swift

ios - 滚动 CollectionView 期间不必要地打开 YouTube 播放器