动态标签文本,行间距+自定义行宽

时间:2018-01-22 01:37:52

标签: ios swift user-interface dynamic uilabel

我正在尝试实现与desired result

类似的功能

目前,我的帖子是从数据库中收集的,并且会被放入标签中。

Current Label

我尝试使用属性字符串并更改文本的背景颜色 - 但是,我希望实现图片中的内容,每行文本的行和自定义宽度之间有空格。如何使用动态文本实现此效果?

1 个答案:

答案 0 :(得分:0)

步骤1)将一个字符串分成几行。您必须知道目标视图的宽度。 view.bounds.width会这样做。

请参阅链接Question,了解如何将文字拆分为多行。注意问题而不是答案,尽管这将成为下一步的答案的一部分。

步骤2)沟渠UILabel。至少使用UITextView。 Apple changed UILabel to pull down orphan words所以,即使你的线条正确,UILabel也可能无法让你看到你正在做什么,因为它可以拉下一个字。使用UITextView并禁用滚动,禁用编辑,并禁用可能的选择。这将为你提供内在的大小,就像UILabel一样。

步骤3)使用属性String添加backgroundColor / highlighting,你可以使用手动布局来寻找或使用多个UITextViews(可能带有UIStackView)或带有手工布局的CATextLayers,用你想要的间距在你自己的视图或图层中划分你的线条使用backgroundColor属性。随你(由你决定。我不知道你在追求什么。

抱歉,我没有准确地向您展示并且只拼凑了片段,但这就是您的方法。干杯