你的位置:首页 > 软件开发 > 操作系统 > ios7之后 根据UILabel的文字计算frame的方法

ios7之后 根据UILabel的文字计算frame的方法

发布时间:2015-10-22 14:00:11
ios7 新出来的根据label的文字和字体大小来确定label的宽高。官方的方法是:- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(N ...

ios7 新出来的根据label的文字和字体大小来确定label的宽高。

官方的方法是:

- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSStringDrawingContext *)context NS_AVAILABLE_IOS(7_0);

其中NSStringDrawingOptions有四个枚举值:

typedef NS_OPTIONS(NSInteger, NSStringDrawingOptions) { // 如果文本内容超出指定的矩形限制,文本将被截去并在最后一个字符后加上省略号。如果没有指定NSStringDrawingUsesLineFragmentOrigin选项,则该选项被忽略  NSStringDrawingTruncatesLastVisibleLine = 1 << 5, // Truncates and adds the ellipsis character to the last visible line if the text doesn't fit into the bounds specified. Ignored if NSStringDrawingUsesLineFragmentOrigin is not also set. // 绘制文本时使用 line fragement origin 而不是 baseline origin  NSStringDrawingUsesLineFragmentOrigin = 1 << 0, // The specified origin is the line fragment origin, not the base line origin // 计算行高时使用行距。(译者注:字体大小+行间距=行距)  NSStringDrawingUsesFontLeading = 1 << 1, // Uses the font leading for calculating line heights // 计算布局时使用图元字形(而不是印刷字体)。  NSStringDrawingUsesDeviceMetrics = 1 << 3, // Uses image glyph bounds instead of typographic bounds} NS_ENUM_AVAILABLE_IOS(6_0);

原标题:ios7之后 根据UILabel的文字计算frame的方法

关键词:IOS

IOS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。