OC_UILabel

520 阅读1分钟

UILabel 是一种显示文本的视图,是开发中频繁用到的UI控件。

UILabel的常用属性

文本显示属性

属性 类型 解释
text NSString 需要显示的文字
attributedText NSAttributedString 需要显示的富文本
font UIFont 字体的格式
textColor UIColor 字体的颜色
textAlignment NSTextAlignment 字体的格式
lineBreakMode NSLineBreakMode 文字截断的方法

其中 NSTextAlignment 包含了以下几种类型:

  • NSTextAlignmentLeft : 文字居左
  • NSTextAlignmentRight : 文字居右
  • NSTextAlignmentCenter : 文字居中
  • NSTextAlignmentJustified : 两端对齐
  • NSTextAlignmentNatural : 根据文字特性对齐

NSLineBreakMode包含以下几种类型:

  • NSLineBreakByTruncatingTail : 末尾截断
  • NSLineBreakByTruncatingMiddle : 中间截断
  • NSLineBreakByTruncatingHead : 开头截断
  • NSLineBreakByWordWrapping:以单词为单位截断
  • NSLineBreakByCharWrapping : 以字符为单位截断
  • NSLineBreakByClipping : 超出部分不显示

文本尺寸属性

属性 类型 解释
adjustsFontSizeToFitWidth BOOL 文本大小适应 UILabel 的尺寸
baselineAdjustment UIBaselineAdjustment 调整文本基线
numberOfLines NSInteger 设置文本的行数

adjustsFontSizeToFitWidth 需要与 baselineAdjustment同时使用才能保证文字居中。

文本阴影属性

属性 类型 解释
shadowColor UIColor 设置阴影的颜色
shadowOffset CGSize 设置阴影的方向和距离

UILabel自适应尺寸

NSString *str = @"这里是文字";
UIFont *font = [UIFont systemFontOfSize:30];
CGSize size = [str sizeWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:font,NSFontAttributeName, nil]];
label.frame = CGRectMake(50, 50, size.width, size.height);
label.text = str;
[self.view addSubview:label];