我需要以编程方式在UITableView中设置单个UITableViewCell的高度。我怎么能这样做?
我需要这个单元格高150像素,其他所有单元格都可以保持默认的44像素高度。
感谢。
答案 0 :(得分:46)
UITableViewCell高度有一个委托函数。
在这里指定特定单元格的indexPath并返回它的高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.section == yourSection && indexPath.row == yourRow) {
return 150.0;
}
// "Else"
return someDefaultHeight;
}
答案 1 :(得分:7)
你必须知道,或弄清楚你想要哪个细胞指数更高。 让我们说你的第一个细胞。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == 0) { //change 0 to whatever cell index you want taller
return 150;
}
else {
return 44;
}
}
答案 2 :(得分:5)
SWIFT ANSWER
在heightForRowAtIndexPath
方法中指定要更改的部分和行(请记住计数从0开始,而不是1)。
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat{
if indexPath.section == 0 && indexPath.row == 0{
return 150
}
return 44.0
}
答案 3 :(得分:2)
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
您可以使用此方法为特定索引路径设置单元格的值,并为其他单元格设置默认值。