2011-12-17 89 views

回答

32

您需要实现

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 

方法在UITableViewDelegate

+0

哇哦谢谢 – user973985 2011-12-17 09:53:53

15

你可以做这样的..

//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; 
} 

我希望这将帮助你..

+0

其实我在做类似的事情我使它更大相比文字标签长度 – user973985 2011-12-17 10:25:09

+1

默认实际上是44分 – Daniel 2013-05-22 19:16:05

-2

您可以使用此代码,改变不同的tableview

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

这个高度可以帮助你。

6

有2个步骤来更改表格单元格的高度,而不会任何额外的代码:

  1. Table View从你的故事板中选择。在Size Inspector更改Row Height
  2. 选择您的Table View Cell,当它在Size Inspector中选中时,请更改Row Height

请注意,您MUST设置BOTH表视图的Row Height属性和表格视图单元格的Row Height属性。

如果您只设置了其中一个,它将不起作用。

0

我发现this answer是改变表格视图单元格高度最丰富和最新的。

TL; DR

  1. 上的viewDidLayoutSubviews方法您表视图使你的自动布局约束
  2. 启用行高度估算时要格外小心。

    self.tableView.rowHeight = UITableViewAutomaticDimension self.tableView.estimatedRowHeight = 44.0; //设置为任何你的“平均”单元格高度是

相关问题