我试图按照我在这里阅读的关于如何内容适合UITableView单元格的内容。但是,单元格仍然是裁剪内容。见下文:
自定义单元格类:
import UIKit
class S360SSessionTableCell: UITableViewCell {
@IBOutlet var iconImg:UIImageView!
@IBOutlet var locationLbl:UILabel!
@IBOutlet var dateLbl:UILabel!
@IBOutlet var startTimeLbl:UILabel!
@IBOutlet var endTimeLbl:UILabel!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
}
实施:
这些是唯一与表相关的方法。另外,我在viewDidLoad中有这个:myTableView.estimatedRowHeight = 100.0
//Table Datasource
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:S360SSessionTableCell? = tableView.dequeueReusableCellWithIdentifier("S360SSessionTableCell") as? S360SSessionTableCell
if ((cell == nil)){
tableView.registerNib(UINib(nibName: XIBFiles.SESSIONTABLECELL, bundle: nil), forCellReuseIdentifier: "S360SSessionTableCell")
cell = tableView.dequeueReusableCellWithIdentifier("S360SSessionTableCell") as? S360SSessionTableCell
}
var session = sessions[indexPath.row]
cell!.locationLbl.text = (session["location"] as! String) + " - " + "Court " + (String(session["subname"]))
dateFormatter.dateFormat = "MMM. dd, yyyy"
cell!.dateLbl.text = dateFormatter.stringFromDate(session["startDate"] as! NSDate)
dateFormatter.dateFormat = "hh:mm a"
cell!.startTimeLbl.text = dateFormatter.stringFromDate(session["startDate"] as! NSDate)
cell!.endTimeLbl.text = dateFormatter.stringFromDate(session["endDate"] as! NSDate)
return cell!
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return sessions.count
}
然而,细胞仍然会被剪裁,如下所示:
我的目标是iOS9.3,我的理解是使用AutoLayout,单元格高度的默认值是自动内容匹配,这是iOS8.0更改的一项优势。
我在哪里错了?我希望单元格适合他们拥有的内容而不是剪辑它。
答案 0 :(得分:1)
从细胞顶部到底部应该存在直接的约束条件。换句话说,Ray Wenderlich的这张图片很好地说明了
来自Ray Wenderlich
此外,您需要从contentView的顶部到底部进行清晰的约束。这可确保自动布局根据其子视图正确确定contentView的高度。
答案 1 :(得分:0)
除了给出答案,您可以尝试以下其他方式, 相应地将约束应用于子视图和标签,并在viewdid中显示以下内容,
tableView.estimatedRowHeight = 85.0
tableView.rowHeight = UITableViewAutomaticDimension
请参阅以下链接了解更多详情,
Working with Self-Sizing Table View Cells
您还可以查看以下样本 Table View Cells with Varying Row Heights