ios - heightForRowAtIndexPath 无法正常工作

标签 ios iphone swift uitableview heightforrowatindexpath

我正在尝试在我的 tableView 中显示具有正确宽高比的图像。我已经预先计算了图像的长宽比,它似乎在实际图像上正常工作,但在它显示的单元格上却不起作用。

单元格中图像的代码:

private var cellImage: UIImage? {
        get { return cellImageView.image }
        set {
            cellImageView?.image = newValue
            if let newimage = newValue {
                heightConstraint.constant = newimage.size.width / CGFloat(aspectRatio)
            }
        }
    }

tableView中的代码:

override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
            return tableView.bounds.size.width / CGFloat(aspectRatio)
    }

aspectRatio 是一个在两者中相同的变量。纵横比 = 图像的宽度/高度。另外,我检查发现两个地方收到的高度是相同的,并且它们是相同的值(在运行时)。

有人知道为什么单元高度设置不正确吗?

最佳答案

您可以使用动态单元格高度并使单元格适合其中的 imageView 检查这个教程 https://www.raywenderlich.com/87975/dynamic-table-view-cell-height-ios-8-swift

关于ios - heightForRowAtIndexPath 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37502414/

相关文章:

ios - 在应用程序的资源包中快速获取导入数据库的路径

ios - 从右下角开始 UITextView 文本,就像在计算器上一样

ios - Xcode 如何在您的生产应用程序中防止或检测 "Location Simulation"? [大事件]

ios - Instagram IOS API 实现

c++ - 如何使用 iOS 中 OpenCV 框架的自定义路径在 CMake 中查找包

iphone - 使用 Storyboard的适用于 iOS 的 Google map API

ios - 使用 Storyboard将 iAd 添加/集成到应用程序中

iphone - 解析json数据

swift - 重写 func +( [ Double ], [ Double ] )

ios - 如何在 Swift 中传递类型为 "Sequence"的 "T"作为参数?