我想模拟OSX应用程序中的多行UILabel行为。 绘制多行标签,您可以指定行数,并且换行系统工作得很好!
这是我想要实现的一个例子。
这是我想用UILabel显示的字符串
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
我可以选择带有尾部截断的 3行标签:
Lorem Ipsum is simply
dummy text of the
printing and typeset...
或带有尾部截断的2行标签我得到:
Lorem Ipsum is simply
dummy text of the pri...
我想我需要一个低级API来以这种方式绘制字符串。
目前我找到3种不同的方式来绘制文本,我想了解哪一种方法可以完成这项任务。
可可文字
NSTextView和NSTextField:它似乎是一个太高的级别...我无法重现这种效果(NSTextView不让我选择行数,并且换行似乎改变了多行NSTextView在一行NSTextView)。
修改 的 我想从字符串中获取帧,然后从帧中获取行并仅使用所需的行重建帧。你觉得怎么样?
核心文字
我可以很好地控制使用框架的文本绘图,但是......我找不到一种方法来定义要显示的行数以及如何截断字符串。
NSLayoutManager
它似乎也是一个很好的解决方案,但我不知道如何重现UILabel多线效果。
你有什么建议可以帮助我完成这个棘手的任务吗?