是否可以使用Swift更改iOS 7中的静态单元格高度?
问题描述:
我知道这是一个问题,有人可能会回答,但我还找不到解决方案。是否可以使用Swift更改iOS 7中的静态单元格高度?
我试图用斯威夫特代码更改静态细胞的HIGHT。我正在使用此方法 func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
但是,单元格大小不会根据标签的内容而改变。这是我的:
@IBOutlet weak var testDetailsLabel: UILabel!
@IBOutlet weak var testDetailsCell: TestDetailsTableViewCell!
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if indexPath.section == 1 && indexPath.row == 0 {
self.testDetailsCell.descriptionLabel?.text = self.test?.details
self.testDetailsCell.setNeedsLayout()
self.testDetailsCell.layoutIfNeeded()
self.testDetailsCell.bounds = CGRectMake(0.0, 0.0, tableView.bounds.width, self.testDetailsCell.bounds.height)
self.testDetailsCell.setNeedsLayout()
self.testDetailsCell.layoutIfNeeded()
let size = self.testDetailsCell.contentView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize) as CGSize!
return size.height + 1
}
return super.tableView(tableView, heightForRowAtIndexPath: indexPath)
}
任何机构知道是否有可能改变静态细胞的高度尺寸?
也许约束的问题呢?我有双方约束,顶部,底部和高度> =约束。
答
我斟酌着这只昨晚也。我在iOS8上的发展,所以我道歉,如果这不工作,IOS 7,但我所做的就是连接一个IBOutlet对表本身,在我viewDidLoad中()方法用下面的代码:
@IBOutlet var logInTable: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
logInTable.rowHeight = 50 //Make table cells fixed height
}
我希望这帮助。
谢谢