首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift 2中带有异步图像的动态单元格高度

Swift 2中带有异步图像的动态单元格高度
EN

Stack Overflow用户
提问于 2015-12-04 01:13:55
回答 1查看 1K关注 0票数 0

我正在尝试建立一个类似Facebook的提要。我使用的是一个标准的Tableview,它在storyboard中设置了自动布局约束。

宽度应为视口的100%,高度应根据图像的纵横比确定。

我使用Haneke的hnk_setImageFromURL从服务器上进行异步镜像加载。

我看到here选择使用tableview.beginUpdates()endUpdates(),它会导致第一次渲染正常工作,但一旦我开始滚动高度计算出错,单元格显示为空白和/或应用程序由于indexOutOfBounds崩溃。

在服务器上使用预先给定的纵横比手动计算heightForRowAtIndexPath中的高度是唯一的选择吗?

我的相关代码部分

代码语言:javascript
复制
ViewController:

func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    return 500
}

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    return UITableViewAutomaticDimension
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

      let cell = tableView.dequeueReusableCellWithIdentifier("FeedItem", forIndexPath: indexPath) as! FeedItemTableViewCell

      content.hnk_setImageFromURL(NSURL(string: contentImage)!, placeholder: nil, format: nil, failure: nil, success: {image in

                    cell.content.image = image  
                    self.beginUpdates()
                    self.endUpdates()

                }
        )
}

另外,使用Haneke的一个副作用是我必须向UIImageView提供一些初始大小,目前我使用的是占位符图像,当图像从服务器加载时会导致恼人的动画

EN

回答 1

Stack Overflow用户

发布于 2015-12-04 01:55:34

Here我没有在cellForRowAtIndex方法中加载单元格数据,而是创建了TableViewCell的一个子类。我使用的是SDWebImage,而不是Haneke。

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34072174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档