【问题标题】:Is it possible to right align only a portion of the text in a UItableView Cell?是否可以仅右对齐 UItableView 单元格中的部分文本?
【发布时间】:2017-02-21 07:13:26
【问题描述】:

我正在尝试开发一个在一个视图上具有排行榜的测验应用程序。我试图让用户的用户名左对齐,他们的分数右对齐。有没有办法做到这一点?我尝试使用制表符,但一团糟。

这是视图的样子:

【问题讨论】:

  • 请分享您的代码或您的视图控制器的故事板/xib 屏幕截图。我建议您在自定义 UITableView 单元格中使用两个不同的标签。一个左右标签。
  • 您可以创建一个两个标签。一个用于用户名,另一个用于分数。对于标签,您可以设置文本对齐方式。
  • 您可以按照@BoominadhaPrakashM 的建议创建两个标签,也可以使用属性字符串。

标签: ios swift xcode uitableview uilabel


【解决方案1】:

简单的自定义单元格和两个不同的标签。

【讨论】:

    【解决方案2】:

    如果你对两个标签都给予相等的宽度约束,这个问题可以在一定程度上得到解决。但是当第一个标签的内容很大时,你可能看不到完整的内容。

    【讨论】:

      【解决方案3】:

      如果你继承 UITableViewCell 并自定义它会容易得多。使用一个 UILabel 作为名称,另一个作为分数,例如:左对齐的 lbName 和右对齐的 lbScore。

      【讨论】:

        【解决方案4】:

        太简单了。使用两个不同的标签,一个用于用户名(左对齐文本),另一个用于分数(右对齐文本)。
        另外,当用户名中有长文本时,根据您对数据可见性的要求,为两个标签之一设置内容压缩优先级

        看看这些快照:

        带有默认content compression resistance priority的标签

        我将标签blablabla blablablacontent compression resistance priority750 更改为749

        结果是:

        更多详情见苹果文档:Setting Content-Hugging and Compression-Resistance Priorities

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-03-16
          • 1970-01-01
          • 1970-01-01
          • 2015-01-03
          • 1970-01-01
          • 2014-09-20
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多