从Firebase异步下载动态图像后调整其大小

苹果电脑

我尝试根据从Firebase数据库下载的图像并将其显示在表格视图单元中来动态调整图像大小。我希望图像的宽度为框架宽度,并相应调整高度。

我有一个customImageView类可以从Firebase异步下载图像

我尝试了许多方法,但徒劳无功。有没有超级干净的方法来动态调整图像大小:-D

这是我的手机:

class viewControllerHomeCell: UITableViewCell  { 

   @IBOutlet var mainImage: CstmImageView!

  }

我的单元格在:

 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cellData =  TableViewControllerHome.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! viewControllerHomeCell

    cellData.mainImage.loadImagesWithUrl(from: self.postArray[indexPath.row].covrImgUrl)
  }

这是一个UIImageView子类,用于从Firebase异步加载图像。

class CstmImageView : UIImageView {
let imageCache = NSCache<AnyObject, AnyObject>()

var imageUrlString : String?
func loadImagesWithUrl(from imageUrl : String!)  {
    imageUrlString = imageUrl
    self.image = nil

    if let cachedImage = imageCache.object(forKey: imageUrl as AnyObject) as? UIImage {
        self.image = cachedImage
        return
    }

    let url = URLRequest(url: URL(string: imageUrl)!)
    URLSession.shared.dataTask(with: url) { (data, response, eror) in

        if eror != nil {
            print(eror!)
            return
        }

            DispatchQueue.main.async {
            if let downloadedImage = UIImage(data : data!) {
                if self.imageUrlString == imageUrl {
                  self.image = downloadedImage
                }
                self.imageCache.setObject(downloadedImage, forKey: imageUrl as AnyObject)
            }

        }
    }.resume()
 }
}

非常感谢任何帮助:)

Silversky Technology

拿起imageView Height Outlet并连接imageView height约束

class viewControllerHomeCell: UITableViewCell  { 

    @IBOutlet var mainImage: UIImageView!
    @IBOutlet var viewImageViewHeight: NSLayoutConstraint!
 }

并使用Pod下载图像

在“ SDWebImage”下

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
 {
     let cellData =  TableViewControllerHome.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! viewControllerHomeCell

        cellData.mainImage.sd_setImage(with:URL.init(string: "Pass Yor image Url string here"))
        { (image, error, imageCacheType, url) in

             cellData.mainImage.image = image

             viewImageViewHeight.constant =  image?.size.height
        }

        cellData.mainImage.loadImagesWithUrl(from: self.postArray[indexPath.row].covrImgUrl)
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

同时下载动态图像

来自分类Dev

将Cloudfront与动态图像调整大小和S3存储集成

来自分类Dev

如何调整响应式引导网站中来自数据库的动态图像的大小

来自分类Dev

如何调整响应式引导网站中来自数据库的动态图像的大小

来自分类Dev

提供调整大小的图像供下载后,隐藏加载的gif

来自分类Dev

在将图像上传到Firebase之前调整其大小

来自分类Dev

调整图像大小的异步任务

来自分类Dev

使用Firebase存储上传后如何获取调整后大小的downloadUrl(Web SDK +调整图像大小)

来自分类Dev

动态调整CachedNetworkImage图像的大小

来自分类Dev

无法动态调整图像大小

来自分类Dev

动态调整图像大小 Caffe

来自分类Dev

REST Web服务下载图像并在Linux系统上根据需要调整其大小

来自分类Dev

上传后调整图像大小

来自分类Dev

调整大小后显示图像

来自分类Dev

加载后调整图像大小

来自分类Dev

使用AlamofireImage调整下载图像的大小

来自分类Dev

Wordpress下载的图像会自动调整大小

来自分类Dev

如何使用python下载调整大小的图像?

来自分类Dev

使元素的宽度与动态调整大小的图像相同?

来自分类Dev

使用CSS动态调整图像大小

来自分类Dev

动态调整画布大小;保持图像的位置

来自分类Dev

调整图像大小以适合JLabel的整体以适应其大小

来自分类Dev

AngularJS动态图像源

来自分类Dev

使动态图像跟随鼠标

来自分类Dev

使动态图像跟随鼠标

来自分类Dev

动态图像处理服务

来自分类Dev

调整图像大小后检测公差颜色

来自分类Dev

调整大小后获取图像尺寸

来自分类Dev

UITableViewCell图像旋转后未调整大小

Related 相关文章

热门标签

归档