【问题标题】:Making custom, dynamic tableview cells制作自定义的动态表格视图单元格
【发布时间】:2014-01-23 10:29:43
【问题描述】:

我正在努力弄清楚如何完全控制我的 tableview 单元格。我希望它们看起来像这样:

现在我需要知道如何正确管理我的细胞。我应该制作表格视图单元格的子类吗?我应该在 tableview 的故事板中做这一切吗?这就是我现在正在做的事情。另外,如何根据文本行数实现动态单元格高度?

谢谢

【问题讨论】:

  • 通过查看屏幕截图,您必须将单元格子类化
  • 我认为您应该将您的问题分成两个单独的线程。自定义单元格和基于内容的动态单元格高度是两个不同的故事。

标签: ios objective-c uitableview


【解决方案1】:

您应该继承 UITableViewCell 类并使用 XIB 创建您自己的自定义单元格。这将为您提供很大的活动空间。

请参阅本教程了解如何执行此操作: http://www.appcoda.com/customize-table-view-cells-for-uitableview/

【讨论】:

  • 您的答案和给定的链接已经过时了。
  • 当涉及到 UITableViewCell 类的子类化时,这个答案仍然非常相关。的确,还有其他技术,但这是我的首选,也是我从中学到的教程。
  • 即使我是用户故事板,我还应该创建 XIB 吗? @akashg
  • 您也可以使用故事板进行子类化...参考stackoverflow.com/questions/8663118/…stackoverflow.com/questions/9010033/…
【解决方案2】:

你可以创建一个自定义视图并在 cellForRowAtIndex 中使用以下内容

static NSString * cellIdentifier=@"MyTableView";
UITableViewCell * cell;
if(cell== nil)
{
    cell = [myTableView dequeueReusableCellWithIdentifier:cellIdentifier];
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
    contentCell.tag =100;
     contentCell=[[ContentOfCell alloc]initWithFrame:CGRectMake(0, 0, 100, 50)];
    [cell.contentView addSubview:contentCell];

    }
    else{
        // Reusable part. Reuse the UI controls here from existing cell
        contentCell = (ContentOfCell *)[cell.contentView viewWithTag:100];
    }
    //Assign all the data here

    contentCell.nameField.text=[arr objectAtIndex:indexPath.section];
    //same way for other fields
   }

contentCell 是自定义视图

【讨论】:

    【解决方案3】:

    我将尝试分三个部分回答您的问题:

    1. 对于基于文本内容的动态单元格高度:您有一个名为 heightForRowAtIndexPath 的表格视图委托,您应该根据其字体和字体大小特征计算文本的高度,当然,通过提供可用宽度,您可以使用 NSString 的“sizeWithFont”方法。

    2. 要对单元格外观进行更多控制:您应该创建一个表格视图单元格子类并在 cellForRowAtIndexPath 中使用它。

    3. 您是否应该使用情节提要进行此操作:没有必要使用情节提要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多