| ||########||########||########||########||########|| ||########||########||########|| |
我已经设置了autolayout约束来将UIImageVIEw的边缘附加到表视图单元格的contentVIEw.这适用于宽度,但高度不是我想要的 – 它总是扩展到底层图像的整个高度.
我在表视图上有这些设置:
self.tableVIEw.estimatedRowHeight = 100.0;self.tableVIEw.rowHeight = UItableVIEwautomaticDimension;
在构造单元格时,我正在尝试计算必要的高度,以便我可以更改UIImageVIEw的框架(或高度约束):
let cell = tableVIEw.dequeueReusableCellWithIDentifIEr("activityPostCell",forIndexPath: indexPath) as UItableVIEwCelllet image = UIImage(named: "my-image.jpg")let aspectRatio = image!.size.height / image!.size.wIDthlet imageVIEw = cell.vIEwWithTag(15) as UIImageVIEw let imageVIEwHeight = aspectRatio * imageVIEw.frame.wIDth
这里的问题是我得到的imageVIEw.frame是在布局发生之前,所以无论如何我都没有计算出正确的高度.
我是以正确的方式来做这件事的吗?有没有一种简单的方法来设置UIImageVIEw的宽高比以匹配它包含的图像?提前致谢.
解决方法 根据@ Wain的建议,添加宽高比约束解决了这个问题:let image = UIImage(named: "my-image.jpg")let aspectRatio = image!.size.height / image!.size.wIDthlet imageVIEw = cell.vIEwWithTag(15) as UIImageVIEwimageVIEw.addConstraint(NSLayoutConstraint( item: imageVIEw,attribute: NSLayoutAttribute.Height,relatedBy: NSLayoutRelation.Equal,toItem: imageVIEw,attribute: NSLayoutAttribute.WIDth,multiplIEr: aspectRatio,constant: 0))总结
以上是内存溢出为你收集整理的ios – 在UITableViewCell中设置与宽度成比例的UIImageView高度全部内容,希望文章能够帮你解决ios – 在UITableViewCell中设置与宽度成比例的UIImageView高度所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)