【问题标题】:text-align-last css property Swift Equivalenttext-align-last css 属性 Swift 等效
【发布时间】:2017-07-11 08:17:35
【问题描述】:

'text-align-last' css 属性的 swift 等效项是什么? 我更喜欢无代码的解决方案。

这是我所做的和我得到的:

最后一行(有时是唯一一行)左对齐,不方便。

【问题讨论】:

  • 所以你想让文本填充宽度但对齐最后一行。其实我以前没见过,所以我建议如果你真的需要它,然后添加一个 web 视图并为文本添加一个基本格式

标签: swift right-to-left


【解决方案1】:

您需要将标签的文本从Plain 更改为Attributed,然后您可以粘贴任何字符串,对齐以及其他属性将保持不变。 所以基本上任何可以在文字处理器应用程序上创建的文本样式都可以在这里使用。

在以下示例中,我使用页面(Mac 应用程序)来编辑我喜欢的文本格式,并将其复制到 Xcode 中的标签文本框中。

这是运行应用程序的模拟器的图片:

【讨论】:

  • 对不起,我认为你没有抓住重点。我已经询问了如何在将最后一行向右对齐的同时将标签与两侧对齐(对齐),而不是默认行为将最后一行向左对齐。
  • 我已经编辑了我的答案,希望这会有所帮助,这里的关键是使用属性字符串可以实现任何样式。
  • 谢谢,我试过了。它在故事板中看起来确实不错。但是,当您的应用程序在模拟器中运行时,标签仍然是“左派”。 :-(
  • 查看我在答案中添加的图片,检查您的设置是否与我的示例相同,并确保您之前没有添加仍然存在的空格
  • 还点击“三个点和一个小箭头”按钮(在我的答案中标记按钮的右侧)检查那里的间距是否正常
【解决方案2】:

虽然不可能在单个标签上应用不同的对齐方式,但如果最后(并且仅在某些时候)行应该右对齐,为什么不将整个标签右对齐?

编辑

如果这不能解决你的问题,那么我认为没有代码是不可能解决的。

如果您决定编写一些代码,您可以考虑确定字符串的最后一行(可能是:How to get text from nth line of UILabel?)并尝试使用 AttributedString 应用不同的格式。

如果可行,那么您始终可以继承 UILabel 并覆盖 func layoutSubviews() 以自动为您计算。这样你就不用再考虑了!

【讨论】:

  • 因为当文本完全右对齐时,它不会在整个水平空间中展开。 (CSS 允许,Microsoft Word 也允许)
猜你喜欢
  • 1970-01-01
  • 2016-07-15
  • 2018-01-23
  • 2019-10-24
  • 2020-12-05
  • 1970-01-01
  • 2012-06-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多