美文网首页
ios - UILabel

ios - UILabel

作者: fjytqiu | 来源:发表于2016-09-27 14:02 被阅读104次

    创建:
    UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(50, 50, 100, 100)];

    • 常用属性

      1.显示文字

      label.text = @"我是文本";

      2.文字颜色(默认黑色)

      label.textColor = [UIColor redColor];

      3.字体及其大小

      label.font = [UIFont systemFontOfSize:15];

      4.文字对其方式

      label.textAlignment = NSTextAlignmentLeft;

      typedef NS_ENUM(NSInteger, NSTextAlignment) {
       NSTextAlignmentLeft      = 0,    // 沿左边对齐
       NSTextAlignmentCenter    = 1,    // 中心对齐
       NSTextAlignmentRight     = 2,    // 沿右边对齐
       NSTextAlignmentJustified = 3,    // 最后一行自然对齐
       NSTextAlignmentNatural   = 4,    // 默认
      

    } NS_ENUM_AVAILABLE_IOS(6_0);

        
    5.文字显示的行数(0代表无限)
    
    label.numberOfLines = 0; 
        
    6.富文本文字(带属性)
    
    label.attributedText = [[NSAttributedString alloc] initWithString:@"我是attri" attributes:@{NSBackgroundColorAttributeName:[UIColor redColor]}];
        
    7.文字数超标处理
    
    label.lineBreakMode=NSLineBreakByCharWrapping;
    
    
    

    typedef NS_ENUM(NSInteger, NSLineBreakMode) {
    NSLineBreakByWordWrapping = 0, // 边缘处理 (默认)
    NSLineBreakByCharWrapping, // 处理不合适的字符
    NSLineBreakByClipping, // 简单线性处理
    NSLineBreakByTruncatingHead, // 溢出的头部用省略号处理
    NSLineBreakByTruncatingTail, // 溢出的尾部用省略号处理
    NSLineBreakByTruncatingMiddle // 溢出的中间用省略号处理
    } NS_ENUM_AVAILABLE(10_0, 6_0);

    *  ####中度使用属性      
    8.用户交互 (默认NO)
    
    label.userInteractionEnabled = NO;
    
    9.是否有效(默认YES,灰色)
    
    label.enabled=NO;
           
    10.阴影偏移量
    
    label.shadowOffset = CGSizeMake(10, 10);
        
    11.阴影颜色
    
    label.shadowColor = [UIColor blackColor];
            
    12.文字垂直方向对齐(只有文本行数为1时有效)
    
     label.baselineAdjustment= UIBaselineAdjustmentAlignBaselines;
    
    

    typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
    UIBaselineAdjustmentAlignBaselines = 0, // 只有文本行数为1是有效 (默认) UIBaselineAdjustmentAlignCenters, // 文本中线于label中线对齐
    UIBaselineAdjustmentNone, // 文本最低端与label中线对齐
    };
    备注:
    这个属性只有当adjustsFontSizeToFitWidth=yes的时候而且numberOfLines是1的时候才起作用
    若是UIBaselineAdjustmentAlignBaselines 的话 变小之后的字体和以前的字体 和label的y值的距离是不变的
    若是UIBaselineAdjustmentAlignCenters的话 变小之后的字体和以前字体的中间center.y是不变的
    若是UIBaselineAdjustmentNone的话 变小之后的字体和以前的字体距离label底部的距离是不变的

           
    13.宽度自适应大小 (默认NO) 
    
    label.adjustsFontSizeToFitWidth = YES;
           
    14.最小适应大小
    
    label.minimumScaleFactor = 15;
           
    15.阴影颜色
    
    label.shadowColor=[UIColor blackColor];
              
    16.高亮状态
    
    label.highlighted = YES;
              
    17.高亮状态文字颜色
    
    label.highlightedTextColor = [UIColor redColor]; 
              
    18.自动布局添加约束中,若文本超过了指定的最大宽度的时候 文本会另起一行 从而增加了label的高度
    
    label.preferredMaxLayoutWidth = 20;
    
    * ####方法 
    1.返回文本绘制矩形
    
      -(CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines;
    
    2.文本绘制函数
    
    -(void)drawTextInRect:(CGRect)rect;

    相关文章

      网友评论

          本文标题:ios - UILabel

          本文链接:https://www.haomeiwen.com/subject/pgbcyttx.html