2016-06-10 73 views
0

所以我一直在根据我从一个API调用中得到的图像大小来调整我的tableView单元的大小。IOS:根据Swift中UIImage的高度重新调整UITableViewCell

http://i.imgur.com/yUmISx1.png

,我得到的图像是在5:4的比例。 我在截图中所做的就是把一个固定高度

override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 
    let viewWidth = self.view.frame.size.width 
    let imageHeight = (viewWidth * 5)/4 
    return imageHeight 
} 

下(我忽略的小东西像电池填充和东西)

即使图像看起来并不太坏,我对我所做的不满意。我也试过

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 
    if image != nil { 
     return image.size.height 
    } else { 
     return DEFAULT_HEIGHT 
    } 
} 

这给我一个单元大小,图像的高度被拉伸。什么是正确的方式来做我想要达到的目标?

编辑:我想找到一种方式,使图像自动调整自己。

例如, 现在,从后端接收的图像比例为4:5。 假设他们将它改变为1:1的比例,我想让它自行调整。任何建议? 另外,当我添加宽高比时,我的故事板会变得疯狂。 TIA! TIA!

回答

1

为什么不为自己的单元使用Autolayout,将ImageView放在单元格中,并给它尾部和前导约束0(或边距)和5:4的宽高比约束?

+0

嗨Rajeev,所以我已经试过你说的话,而不删除我的heightForRowAtIndexPath,它看起来不错。现在它的高度太少了。 所以现在我有一个“roundedCornerView”,它是一个自定义类,它在左上和右上3个约束(给它一个很好的填充)和0到底部。在4:5 AR的圆角视图的两侧,imageView处于0约束条件下。 继承人我得到了什么 http://i.imgur.com/KdPpjQg.png TIA。 此外,如果它有助于我的故事板给我一个警告,说“高度和垂直位置模糊'圆角视图'” –

相关问题