ios - UILabel

2016-09-27  本文已影响104人  fjytqiu

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

} 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;
上一篇下一篇

猜你喜欢

热点阅读