自我调整大小UITableViewCell不适用于右侧细节单元格

时间:2015-09-26 16:15:49

标签: ios iphone swift uitableview

我正在尝试使用新的(自iOS8以来)功能来自行调整UITableViewCells的大小。不幸的是,当使用 Right Detail Cell时,它无法正常工作。

我的设置

我正在使用UITableViewController。因此,已经配置了UITableViewCell。我将UITableViewCell样式设置为" Right Detail"。然后我将detailTextLabel的numberOfLines属性设置为0,以便在我提供一堆文本时增长。

问题

结果如下: Right Detail Cell

当我将UITableViewCell更改为其他样式时,例如" Left Detail"有用: Left Detail Cell

如果我使用我现在使用的自定义UITableViewCell子类,它也可以工作,但我仍然想知道为什么Right-Detail样式不起作用。

问题

为什么在使用Right-Detail单元格样式时自我调整大小的UITableViewCell不起作用?

也有人对此有解决方法吗?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。

最终我放弃了#34; Right Detail"赞成我自己的定制:

  1. 我创建了自己的简单类,它继承自UITableViewCell:

    class TransactionCell: UITableViewCell
    {
    
    }
    
  2. 我通过设置" Style"将我的原型单元格设置为自定义类。字段到"自定义"在"表格查看单元格"菜单并添加" TransactionCell"到了#34; Class" " Custom Class"菜单。在故事板中选择原型单元格时,可以使用这些菜单。 enter image description here enter image description here

  3. 我在我的原型单元格中添加了两个标签,并通过右键单击从我的标签拖到我的班级将它们连接到我的自定义类(奇怪的是,我必须先清理我的构建才能让我这样做):< / p>

    class TransactionCell: UITableViewCell{
    
        @IBOutlet weak var detailsLabel: UILabel!
    
        @IBOutlet weak var amountLabel: UILabel!
    
    }
    
  4. 我为我的标签添加了新约束,利用了快速的自动布局功能(您需要根据自己的要求设置这些约束;如果您遇到困难,请参阅自动布局教程)

  5. How to add new constraints: click on the thing to add constraints to then click on this symbol

    1. ...并设置&#34; Lines&#34;和&#34;换行&#34;各自&#34;标签&#34;中的字段菜单,以便标签之间的间距是均匀的,以便我的细节标签可以弯曲到多行。 enter image description here
    2. 它对我有用,允许我在每个单元格中的UITableView中具有不同数量的多行的灵活性,同时格式化自动换行以使其看起来很好甚至,就像我预期的那样#34 ;正确的细节&#34;自动做。

      如果这是你想要的,请标记答案:)