我为
设置了tableViewCellUITableViewAutomaticDimension
但是,有些单元格没有UIImage。如果不包含图像,我希望单元格调整大小。如何以适当的方式将单元格的高度设置为可以实现此目的的位置。
如果图像丢失,我想让单元格调整到textView的autoDimension的高度(在storyboard中的imageView上方)。什么是最好的解决方法?
UPDATE *:
所以我完全按照你说的做了但我用标识符而不是IBAction做了。
if let c = messageImage.constraint(withIdentifier: "imageViewHeightConstraint") {
// do stuff with c
if(messageArray[indexPath.row].uploadedPhotoUrl == ""){
c.constant = 1
}else {
c.constant = 162
}
// c.constant = (messageArray[indexPath.row].uploadedPhotoUrl == "") ? 1 : 162
}
let filter = AspectScaledToFillSizeFilter(size: messageImage.frame.size)
messageImage.af_setImage(withURL: messageImageDownloadUrl! as URL, filter: filter)
cell?.layoutIfNeeded()
return cell!
UI:
答案 0 :(得分:2)
将UIImageview
的高度限制挂钩为IBOutlet并在cellForRow
cell.imageVHeightCon.constant = ( image == nil ) ? 0 : 200
cell.layoutIfNeeded()
return cell
答案 1 :(得分:0)
好方法是使用水平stackview
当你不需要imageview设置imageview.isHidden = true