表视图单元格大小

时间:2016-05-06 17:09:10

标签: ios objective-c iphone

我正在使用带有目标C的Xcode。

(我认为)我成功创建了一个表视图并创建了一个包含所有连接的新单元。 问题是运行时单元的大小。我创建了一个更大的单元格,有2个标签(1个顶部和1个底部),只能看到顶部标签。 Screen shot

对不起,如果是重新发布,没找到一个解决方案,谢谢。

6 个答案:

答案 0 :(得分:0)

您还必须实施方法tableView:heightForRowAtIndexPath:并返回所需的高度。

答案 1 :(得分:0)

您需要添加此UITableView委托方法:

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

      // return the desired height of your cell
      return 80.0f;
}

答案 2 :(得分:0)

您需要编辑单元格和tableview控制器的选项: TableView OptionsCellView options

答案 3 :(得分:0)

请尝试这个。它可能对您有所帮助

 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
      CGSize constraintSize = {245.0, 20000}
      CGSize neededSize = [ yourText sizeWithFont:[UIfont systemFontOfSize:14.0f] constrainedToSize:constraintSize  lineBreakMode:UILineBreakModeCharacterWrap]
        if ( neededSize.height <= 18) 

          return 45
    else return neededSize.height + 45 
    //18 is the size of your text with the requested font    (systemFontOfSize 14). if you change fonts you have a different number to use  
    // 45 is what is required to have a nice cell as the neededSize.height is the "text"'s height only
    //not the cell.

}

答案 4 :(得分:0)

使用自定义TableView单元格

方法enter image description here

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return 105;
}

答案 5 :(得分:0)

在tableViewdelegate中尝试此操作(假设使用autolayout):

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
   return UITableViewAutomaticDimension;

}

- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath{
   return UITableViewAutomaticDimension;
}