目前,我有一个UITableViewCell,其高度为406.但是,按下按钮后,我希望单元格扩展到473的高度。我在单元格内部有一个隐藏的UITextView,通过按下按钮,用户可以看到文本视图,但单元格不会变大。
有关如何解决此问题的任何想法?
@IBAction func descAndText(sender: AnyObject) {
let singleTap = UITapGestureRecognizer(target: self, action: "showDesc")
singleTap.numberOfTapsRequired = 1
self.addGestureRecognizer(singleTap)
}
func showDesc() {
if descriptionText.hidden == true {
hello.theTableView.rowHeight = 473
descriptionText.hidden = false
} else {
descriptionText.hidden = true
hello.theTableView.rowHeight = 406
}
}
答案 0 :(得分:0)
您应该在其他地方存储有关细胞状态的信息。目前,您将它存储在UILabel实例中 - 这意味着它会在调用UITableView的重载方法之前保留此信息,因为它会重建每个可重用的单元格。
我建议故事扩展NSMutableArray实例中每个单元格的信息,并检查是否在UITableView的数据源方法中扩展单元格以提供正确的单元格高度。