【问题标题】:Vertically center right detail UILabel in UITableViewCell在 UITableViewCell 中垂直居中右细节 UILabel
【发布时间】:2014-05-27 19:43:41
【问题描述】:

我有一个非常基本的原型表视图单元格,设置为 Right Detail 样式。默认情况下,右侧可用的标签垂直居中。但是,如果您将字体大小从默认的 17 更改为 12,那么您会看到它不再居中 - 向下推得太远了。

当你双击标签时,你可以知道它的框架与单元格的底部对齐。

我怎样才能将它垂直对齐在中间呢?谢谢!

查看问题:
1.拖出Table View Controller
2. 将样式更改为右细节
3.选择正确的标签,将字体大小改为12

【问题讨论】:

  • 改变尺寸后重新定位如何?它应该与引导线对齐。
  • 这是不可能的——你不能在故事板中改变它的 x、y、宽度或高度。我没有手动添加那个标签,它是默认的 Right Detail 标签。
  • 您应该创建自己的单元子类并自己创建接口。

标签: ios objective-c uitableview uilabel vertical-alignment


【解决方案1】:

内置的 Right Detail 表格视图单元格样式正在做正确的事情。这不是你所期望的。您希望它在单元格内垂直对齐。但 Apple 认为 Title 和 Detail 标签都应该baseline对齐。

如果您确实想垂直对齐 Detail 标签,您应该创建自己的自定义 UITableViewCell 子类。为此,您可以添加右细节单元格和自定义单元格。将两个标签从 Right Detail 单元格复制到您的自定义单元格。复制 x、y、宽度和高度,使您的自定义单元格看起来与右侧细节单元格完全相同。然后你可以改变你的字体大小。最后,为您的标签添加必要的约束。对于 Details 标签,您显然想要添加垂直对齐约束。

希望对您有所帮助。祝你好运!

【讨论】:

  • 也许我会再考虑一下,看看我对基线对齐的感觉。模仿我可以免费获得的东西减去中心对齐需要做很多工作。 :p
  • 内置的表格视图单元格样式非常适合原型应用程序。但是,对于发布应用程序,您几乎总是创建自己的自定义子类。所以这是额外的工作,但不是太多:)
  • 它一直困扰着我,所以我确实创造了自己的风格。确实这不是太多的工作 - 感谢您的建议。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-25
  • 2013-08-01
  • 2014-02-02
  • 1970-01-01
相关资源
最近更新 更多