无法更改细胞的行高 - 有2个原型细胞

时间:2016-04-07 20:16:09

标签: ios swift uitableview storyboard tableviewcell

我有一个包含2个原型单元格的TableView。我希望其中一个是静态的(称之为标题单元格),另一个是动态的(称之为描述单元格)。

因此,我将TableView单元格设置为Dynamic Prototypes,将2将原型单元格设置为2。 我还设置了TableView并增加了原型单元格;并放置虚拟数据以使其工作。

然而,无论我做了什么,我都无法调整Header单元格的大小。

  • 首先,在Storyboard中,我尝试更改Header Cell的行高(我勾选了'Custom')。这似乎改变了故事板中行的高度;事实上,它不会在构建之后。

  • 其次,此宽度和高度位似乎已禁用。

enter image description here

  • Content View下的Header Cell也是如此。宽度和宽度高度调节部件已禁用。

顺便说一下,Description Cell的一切都是一样的。我尝试将它添加到行高,似乎在故事板中更改,但在构建之后,没有运气。它只是表现自己。

我还应该强调它为Description Cell提供了更多空间,我返回cell.textLabel?.text = "BlaBla"(因此它必须自己编写文本);但对于我在Storyboard上拖放的其他单元格,它只是挤压高度。

我可能做错了什么?你觉得我怎么想?

修改(我顶部有导航栏)

  • 它在模拟器上的样子:

enter image description here

  • 它在Storyboard上的表现:

enter image description here

正如你所看到的那样,它缩小了Header Cell(使设计变得混乱),并随机增加Description Cell的高度。

如果我可以使用heightForRowAtIndexPath,我应该如何使用这种方法为2个原型单元格赋予不同的高度。 (我希望Header Cell为静态行高,但是Description - Dynamic,或者至少不是相同的高度)

1 个答案:

答案 0 :(得分:1)

您要在表格视图的委托中实施- tableView:heightForRowAtIndexPath:,并返回每行所需的高度。

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    if indexPath.row == 0 {
        return 100
    }
    return 44
}