我注意到您可以使用addTextContainer:(NSTextContainer *)textContainer选择器在Objective-C中向布局管理器添加多个文本容器。使用TextKit时,我只需要添加一个文本容器,当处理多个文本容器时,所有的文本视图都会被链接到布局管理器的文本存储中的相同文本填充。我只是好奇,但是什么时候我需要向一个布局管理器添加多个文本容器呢?
发布于 2015-03-15 05:31:12
当您需要关联的NSTextStorage中的文本跨越多个页面(通常每个页面都是一个NSTextView)时,一个NSLayoutManger到多个文本容器,就像在文字处理器中将其文本分散到多个页面中一样。
NSLayoutManager足够聪明,可以将NSTextStorage中的文本拆分为每个NSTextContainer。
发布于 2017-08-01 09:38:10
..。NSTextStorage对象的数据,并将它们布置在NSTextContainer对象定义的区域内。
此配置受只有一个NSTextContainer-NSTextView对的限制。在这样的布置中,文本在由NSTextContainer定义的区域内不间断地流动。
这种布局无法适应分页符、多列布局和更复杂的布局。
通过使用多个NSTextContainer-NSTextView对,可以进行更复杂的布局安排。例如,为了支持分页符,应用程序可以配置文本对象,如图3-4所示。
常见配置
https://stackoverflow.com/questions/25365914
复制相似问题