【问题标题】:How to use drawInRect:withAttributes如何使用 drawInRect:withAttributes
【发布时间】:2013-11-02 17:50:47
【问题描述】:
我正在关注一个创建 CGSize 的教程,如下所示:
CGSize size = [self.label.text sizeWithFont:(UIFont) forWidth:(CGFloat) lineBreakMode:(NSLineBreakMode)];
首先这是什么意思,它有什么作用?我看到它在 iOS 7 中已被弃用,并被 drawInRect:WithAttribute 所取代。这是否做同样的事情以及它是如何使用的?
提前致谢!
【问题讨论】:
标签:
ios
objective-c
cgsize
【解决方案1】:
如果您在 Xcode 中按住 alt 键单击该方法,它会告诉您它的作用。
此特定方法返回一个 CGSize(具有两个字段 - 宽度和高度的结构),该 CGSize 由 NSString(标签中的文本)针对特定字体和有限长度进行计算。
例如,您想知道您的标签有多大,以便在屏幕上定位其他元素。此方法对您有帮助,因为它返回所述标签将占用的大小。
替换它的方法是 boundingRectWithSize:options:attributes:context: 做同样的事情