【问题标题】:how to align a label in UITableview prototype cell to a label outside UITableview?如何将 UITableview 原型单元格中的标签与 UITableview 外部的标签对齐?
【发布时间】:2016-02-02 04:17:37
【问题描述】:

我需要将 UITableView 原型单元格中的标签与 UITableView 之外的标签对齐。当我尝试将它们选择在一起然后水平对齐时,该选项是灰色的,我不能这样做吗?那么如何对齐它们以使它们的中心对齐?谢谢。

【问题讨论】:

  • 做不到?就像您将 item 和 price 作为部分标题,并且后面的数据可以滚动,但它们应该与每个条目的 item 和 price 对齐。也许节标题可以与原型单元格对齐?
  • 是的。我只是说如果无法在 tableview 单元格外部对齐,也许对齐标题是可能的。我的真实情况是我需要将信息放在表视图之外的标题中,因为用户必须输入一些内容,并且有一个按钮 ADD 可以将这些信息添加到表视图的每一行。所以用户需要输入项目名称和价格,添加到tableview,然后输入另一个项目名称和价格并添加到tableview等等。这就是为什么我希望这个在标题之外是一个单独的视图,但需要与显示对齐在表视图中。感谢您的回复。
  • 真的很感激。问题是如果使用相同的边距/间距,它们不会在不同尺寸的手机上对齐。但是感谢您的回答和下面提供的答案。我想我必须选择一个。
  • 我添加了一张图片。在这种情况下不需要代码。我没有足够的声望来添加图片。
  • 看起来您使用的间距不同。您应该显示您的视图层次结构和约束。

标签: uitableview alignment label


【解决方案1】:

要将一个标签与另一个标签约束(对齐),它们必须是相同视图中的兄弟。

例如,在 tableView 单元格中,您可以:

  • 垂直对齐一列标签的左边缘

  • 水平对齐一行标签的基线

你不能做的是限制两个不同视图中标签之间的对齐方式(因为它们不共享一个共同的超级视图并且没有办法表达它们之间的关系)。这就是当您从不同视图中选择标签时该选项呈灰色显示的原因。

这将在单元格中包含一个标签,在表格之外包含另一个标签,甚至在节标题中。单元格和标题是视图层次结构中的两个不同视图。

您可以做的最好的事情是为您的标题标签和单元格标签使用 same(前导或尾随)边距,因此单元格内容恰好垂直对齐(向左或标题标签的右边缘)。

另一种方法

话虽如此,add a new row to a tableView 还有其他方法,如果您决定在同一个视图控制器中完成所有操作。

例如,您可以提供内联编辑,您可以在其中插入一个带有可编辑项目和价格文本字段的单元格,并让用户将新信息直接输入到单元格中。

同样,由于布局可以使用相同的前导边距或后边距,因此您的内容可以在显示内容和输入内容之间垂直对齐。

这总体上会简单得多,因为您可以使用 tableViewController,而不是具有单独标题和表格视图的 viewController。

【讨论】:

  • 非常感谢。这提供了一种解决方案。
猜你喜欢
  • 2013-11-08
  • 2013-02-09
  • 2019-07-25
  • 2023-04-03
  • 2015-10-12
  • 1970-01-01
  • 2015-12-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多