我正在尝试获取属性字符串的矩形,但 boundingRectWithSize 调用不尊重我传入的大小,并返回一个具有单行高度而不是大高度的矩形(它是一个长字符串) .我已经通过传入一个非常大的高度值和下面的代码中的 0 进行了实验,但是返回的矩形总是相同的。
CGRect paragraphRect = [attributedText boundingRectWithSize:CGSizeMake(300,0.0)
options:NSStringDrawingUsesDeviceMetrics
context:nil];
这是坏了,还是我需要做其他事情才能让它返回一个用于包装文本的矩形?
最佳答案
您似乎没有提供正确的选项。对于包装标签,至少提供:
CGRect paragraphRect =
[attributedText boundingRectWithSize:CGSizeMake(300.f, CGFLOAT_MAX)
options:(NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading)
context:nil];
注意:如果原始文本宽度在300.f以下不会换行,所以请确保绑定(bind)大小正确,否则仍然会得到错误的结果。
关于objective-c - NSAttributedString 的 boundingRectWithSize 返回错误的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13621084/
相关文章:
ios - 如何使用 AVAudioRecorder 在 iPhone 上录制音频?
iphone - 在 UIViewController 上显示 clearColor UIViewC
objective-c - Objective-C 中的 "unrecognized selecto
objective-c - 每个核心数据关系都必须有一个逆关系吗?
ios - 从 UITableView 单元格内的 url 异步加载图像 - 滚动时图像更改为错误图
objective-c - Xcode 5 : Code signing entitlement e