zoukankan      html  css  js  c++  java
  • iOS 获取 UILabel串的宽度

     1 /**
     2  *  获取高度
     3  *
     4  *  @param font  目标字体
     5  *  @param width 约束宽度
     6  *
     7  *  @return 目标高度
     8  */
     9 - (CGFloat)ptv_heightWithFont:(UIFont *)font constrainedToWidth:(CGFloat)width {
    10     UIFont *textFont = font ? font : [UIFont systemFontOfSize:[UIFont systemFontSize]];
    11     
    12     CGSize textSize;
    13     
    14 #if __IPHONE_OS_VERSION_MIN_REQUIRED < 70000
    15     if ([self respondsToSelector:@selector(boundingRectWithSize:options:attributes:context:)]) {
    16         NSMutableParagraphStyle *paragraph = [[NSMutableParagraphStyle alloc] init];
    17         paragraph.lineBreakMode = NSLineBreakByWordWrapping;
    18         NSDictionary *attributes = @{NSFontAttributeName: textFont,
    19                                      NSParagraphStyleAttributeName: paragraph};
    20         textSize = [self boundingRectWithSize:CGSizeMake(width, CGFLOAT_MAX)
    21                                       options:(NSStringDrawingUsesLineFragmentOrigin |
    22                                                NSStringDrawingTruncatesLastVisibleLine)
    23                                    attributes:attributes
    24                                       context:nil].size;
    25     } else {
    26         textSize = [self sizeWithFont:textFont
    27                     constrainedToSize:CGSizeMake(width, CGFLOAT_MAX)
    28                         lineBreakMode:NSLineBreakByWordWrapping];
    29     }
    30 #else
    31     NSMutableParagraphStyle *paragraph = [[NSMutableParagraphStyle alloc] init];
    32     paragraph.lineBreakMode = NSLineBreakByWordWrapping;
    33     NSDictionary *attributes = @{NSFontAttributeName: textFont,
    34                                  NSParagraphStyleAttributeName: paragraph};
    35     textSize = [self boundingRectWithSize:CGSizeMake(width, CGFLOAT_MAX)
    36                                   options:(NSStringDrawingUsesLineFragmentOrigin |
    37                                            NSStringDrawingTruncatesLastVisibleLine)
    38                                attributes:attributes
    39                                   context:nil].size;
    40 #endif
    41     
    42     return ceil(textSize.height);
    43 }
  • 相关阅读:
    Net 下安装、调试的常见问题与错误
    解决在网页框架中,页面的样式表失效的方法
    C#.NET Show Text Info
    C#.NET 部署应用程序之ClickOnce
    VS2005 数据库间转移数据(SSIS)
    C#.NET ClickOnce
    SQL2005 还原备份数据
    C#.NET TreeView.cs
    C#.NET SetComboBox Class
    C#.NET GetLocalMachineInfo.cs
  • 原文地址:https://www.cnblogs.com/lz465350/p/9964870.html
Copyright © 2011-2022 走看看