更改UITableViewCell的高度

时间:2011-12-17 09:33:46

标签: ios objective-c uitableview

我想让UITableViewCell更大。我怎么能这样做,我试过调整它的框架,但没有任何反应。我该怎么办?

5 个答案:

答案 0 :(得分:33)

您需要实施

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
<{3}}中的

方法。

答案 1 :(得分:17)

你可以这样做..

//Change the Height of the Cell [Default is 44]:
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath
{
  if (indexPath.section == 0) {
   if (indexPath.row == 1) {
     return 90;
   }
  }
  return 44;
}

我希望这会对你有帮助..

答案 2 :(得分:6)

有两个步骤可以更改表格单元格的高度,而无需任何其他代码:

  1. 从故事板中选择Table View。在Size Inspector更改Row Height
  2. 选择Table View Cell,然后在Size Inspector中选择Row Height更改Row Height
  3. 请注意,您必须设置表格视图的Row Height属性和表格视图单元格的{{1}}属性的 BOTH

    如果您只设置其中一个,则无效。

答案 3 :(得分:0)

我发现ADO RecordSets是最具信息量且最新的更改表格视图单元格的高度。

TL; DR

  1. 制定自动布局约束时要格外小心
  2. viewDidLayoutSubviews方法中对表格视图启用行高估算。

    self.tableView.rowHeight = UITableViewAutomaticDimension self.tableView.estimatedRowHeight = 44.0; //设置为&#34;平均值&#34;细胞高度

答案 4 :(得分:-2)

您可以使用此代码更改不同tableview的高度

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(tableView == tableView1) 
    {
        return 55;
    }
    else if(tableView == tableView2)
    {
        return 75;
    }
}

这可能会对你有帮助。