【问题标题】:Set row height from the height of an image loaded from a plist从 plist 加载的图像的高度设置行高
【发布时间】:2010-11-20 02:53:56
【问题描述】:

我有一个 UITableView,它在每个单元格中显示单个大图像。图像的名称存储在 plist 中。我想调整每个单元格的高度以适应图像的高度。

有人知道获取图像高度并使用它来设置行高的方法吗?

我很难找到这个,非常感谢任何帮助。

【问题讨论】:

    标签: iphone uitableview height


    【解决方案1】:

    最好的办法可能是将图像高度预加载到您的 plist 中。否则,您将不得不加载图像(使用 UIImage 的 imageWithContentsOfFile: 方法),然后获取其大小(属性)。

    要设置自定义表格行高,请在表格的委托中实现 -tableView:heightForRowAtIndexPath:。

    【讨论】:

    • 感谢您的建议。您对将图像高度预加载到 plist 中是否有任何提示?谢谢!
    • 当你将它插入 plist 时,有另一个你设置高度的键,而不是在运行时。插入时执行一次。
    【解决方案2】:

    UIImage 对象的高度属性 - 我们称之为 image - 是:

    CGFloat imageHeight = image.size.height;
    

    【讨论】:

      【解决方案3】:

      这是实际工作的代码。我把它放在 heightForRowAtIndexPath 方法下。

      UIImage *imageForHeight = [UIImage  imageWithContentsOfFile:MyImagePath];   
      
      imageHeight = CGImageGetHeight(imageForHeight.CGImage);
      
      return imageHeight;
      

      只是使用:

      CGFloat imageHeight = image.size.height;
      

      正如 Jason 建议的那样,由于某种原因没有奏效。但他让我走上了正轨。

      【讨论】:

        猜你喜欢
        • 2016-12-25
        • 2013-05-26
        • 1970-01-01
        • 1970-01-01
        • 2012-03-01
        • 2014-06-21
        • 1970-01-01
        • 1970-01-01
        • 2010-12-17
        相关资源
        最近更新 更多