gpt4 book ai didi

objective-c - 如何获取 CATextLayer 的环绕计数以计算高度

转载 作者:行者123 更新时间:2023-11-29 11:14:51 24 4
gpt4 key购买 nike

我正在向 UIScrollView 中的包装 CATextLayer 添加文本。每次添加文本时,我都需要为 textLayer 和 scrollView 的 contentSize 增加高度,并调整 scrollView 的 contentOffset

(用户应该能够使用 scrollView 查看以前的文本,但是当添加新文本时,我想以编程方式向下滚动到它。)

UIKit 的 sizeWithFont: 会将整个字符串视为在一行中,因此为了计算高度,我需要将返回的 size.height 乘以行数,如由 textLayer 的包装产生。

问题是,如果我通过 textLayer 访问字符串,它不会包含任何额外的“\n”或“\r”字符来说明换行。

我确实可以通过某种方式获取包装信息吗?也许以某种方式从父类(super class) CALayer 派生?否则我将无法计算自己的换行符。

最佳答案

我假设 CATextLayer 在内部使用 Core Text 进行布局,因此您可以这样做并使用 CTFramesetterSuggestFrameSizeWithConstraints 为具有给定宽度的属性字符串计算适当的高度.

关于objective-c - 如何获取 CATextLayer 的环绕计数以计算高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9928744/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com