UILabel的简单使用介绍

原创 2015年11月18日 14:35:50

首先创建一个label ,label是继承自UIView

UILabel *myLabel = [[UILabelalloc]init];

CGFloat labelW = 200;

CGFloat labelX = (self.view.frame.size.width - labelW)/2;

myLabel.frame = CGRectMake(labelX,100, labelW, 50);

myLabel.backgroundColor = [UIColorlightGrayColor];

_myLabel = myLabel;

[self.view addSubview:myLabel];


设置label的文字默认是nil

myLabel.text = @"依然fantasyfantasyfantasyfantasy";


设置label的字体大小默认是17

myLabel.font = [UIFont systemFontOfSize:30];


设置label的字体颜色默认的是nil

但是你不设置颜色的话 打印字体颜色的时候会出现UIDeviceWhiteColorSpace 0 1

这个颜色是[UIColor colorWithWhite:0 alpha:1];所以默认字体颜色是黑色

myLabel.textColor = [UIColor yellowColor];


在字上的阴影上的颜色 默认是空得没有shadowColor

myLabel.shadowColor = [UIColor redColor];


字体颜色的阴影颜色在字体的哪一个方向 默认是(0-1)是上面

0,1)是下面10)是右边-10)是左边-1-1)是左上依次下去

正负代表方向  数值代表距离的点数

(0,0)代表没有shadowColor

myLabel.shadowOffset = CGSizeMake(0, 0);


这个属性决定了一个label显示文字的行数默认是1就一行

如是0的话就是可以有无限行

如果文本的高度达到了控件的高度 或者超过了 都会启用lineBreakMode这个属性模式

myLabel.numberOfLines = 1;




textAlignment是设置label的对齐方式是一个枚举

默认是左对齐

NSTextAlignmentLeft=0     左对齐

NSTextAlignmentCenter=1    居中

NSTextAlignmentRight=2     右对齐

NSTextAlignmentJustified=3 左右两边都对齐 一个段落的最后一行是natural-aligned

NSTextAlignmentNatural=4   显示脚本的默认对齐方式

myLabel.textAlignment = NSTextAlignmentCenter;



枚举类型 默认是NSLineBreakByTruncatingTail

NSLineBreakByWordWrapping = 0, 按着一个单词来显示 不会被剪辑剩余的不会被显示

NSLineBreakByCharWrapping,   按着一个字体来显示 不会被剪辑剩余的不会被显示

NSLineBreakByClipping,         把能显示的全显示完 剩下的直接不显示可能有的字显示一半就被剪辑

NSLineBreakByTruncatingHead,   在那一行显示不全的话 那一行 就以 ...abcd模式来显示

NSLineBreakByTruncatingTail,   在那一行显示不全的话 那一行 就以 abcd...模式来显示

NSLineBreakByTruncatingMiddle 在那一行显示不全的话那一行 就以 ab...cd模式来显示

  

myLabel.lineBreakMode = NSLineBreakByTruncatingTail;



对于attributedText这个属性 可以改变label的一些属性比如fonttextColor

关于attributedText,看更多的信息请点这里

不用这个属性的话 不要设置为nil

若为nil的话 他会重新设置你的font text等 这时你会看到你的label没有文字了 

myLabel.attributedText = nil;



是不是高亮状态 默认是no

myLabel.highlighted = YES;

 

设置高亮状态下的颜色默认是nil

myLabel.highlightedTextColor = [UIColor redColor];


设置是否可以和用户直接交互 一般添加手势的时候会把这个打开

默认是不可以交互的

myLabel.userInteractionEnabled = YES;



默认是yes 若改成no字体的颜色会变暗

添加手势之后 把这个属性改为no这个手势依然可以被触发

不知道这个属性有什么用处 难道是单单的改变颜色

myLabel.enabled=YES;



这个属性当文本宽度小于控件宽度的时候 这个属性没做什么事情

当文本宽度大于控件宽度的时候 所有的文字会自适应这个控件的宽度,改变了字体的大小

myLabel.adjustsFontSizeToFitWidth = YES;


  

这个属性只有当adjustsFontSizeToFitWidth=yes的时候而且numberOfLines1的时候才起作用

若是UIBaselineAdjustmentAlignBaselines 的话 变小之后的字体和以前的字体 labely值的距离是不变的

若是UIBaselineAdjustmentAlignCenters的话 变小之后的字体和以前字体的中间center.y是不变的

若是UIBaselineAdjustmentNone的话 变小之后的字体和以前的字体距离label底部的距离是不变的

UIBaselineAdjustmentAlignBaselines = 0,当缩小文本位置基于最初的基线的时候才用到这个属性

UIBaselineAdjustmentAlignCenters,

UIBaselineAdjustmentNone,

myLabel.baselineAdjustment =UIBaselineAdjustmentAlignBaselines;


默认是0若是0则当前字体大小被识别为最小的字体

用这个属性来指定最小的乘数 这个乘数是当前的字体来计算出可以一个可以接受的字体来展示label

若是1的话表明这个字体不可以被放大和缩小了

myLabel.minimumScaleFactor = 0;


这个属性理解欠缺求大神指点官方文档没看到对这个的解释

这个属性是iOS9 才出现的

myLabel.allowsDefaultTighteningForTruncation = YES;



这个属性是用来设置多行label的最大宽度的

当自动布局的时候约束这个label的时候这个属性会起作用

在自动布局添加约束中,若文本超过了指定的最大宽度的时候 文本会另起一行 从而增加了label的高度

myLabel.preferredMaxLayoutWidth = 20;






版权声明:本文为博主原创文章,未经博主允许不得转载。

iOS UIlabel一些常用属性方法总结

text 设置标签显示内容 font 设置字体大小默认是17 textColor 设置字体颜色 textAlignment 设置文本左右对其方式 lineBre...
  • wang1018960145
  • wang1018960145
  • 2016年03月16日 11:14
  • 489

Swift—文本框(UILabel)详解

//声明全局的label1,“:”代表label1是UILabel的一个对象     var label1 : UILabel!          override func viewDidLo...
  • wwc455634698
  • wwc455634698
  • 2016年09月20日 10:11
  • 1016

iOS-UIKit( UILabel.h - -解读)

NS_ASSUME_NONNULL_BEGIN @class UIColor,UIFont; NS_CLASS_AVAILABLE_IOS(2_0)@interfa...
  • chan1142131456
  • chan1142131456
  • 2015年10月26日 10:05
  • 708

iOS UILabel详解

·UILable是iPhone界面最基本的控件,主要用来显示文本信息。 ·常用属性和方法有: 1、创建 CGRect rect = CGRectMake(100, 200, 50, 50); UILa...
  • zhaopenghhhhhh
  • zhaopenghhhhhh
  • 2013年11月14日 22:20
  • 50224

UILabel最全最详细的介绍

@property(nullable, nonatomic,copy)   NSString           *text;//设置和读取文本内容,默认为nil @property(null_re...
  • chenyongkai1
  • chenyongkai1
  • 2016年08月22日 15:22
  • 512

UILabel的简单使用介绍

首先创建一个label ,label是继承自UIView的 UILabel *myLabel = [[UILabel alloc]init]; CGFloat labelW = 200; CGF...
  • WKFfantasy
  • WKFfantasy
  • 2015年11月18日 14:35
  • 1608

UILabel 属性

关于unlabel属性的解析
  • baidu_33209995
  • baidu_33209995
  • 2016年04月07日 11:36
  • 140

UILabel简单使用

UILabel *nameLabel = [[UILabel alloc]initWithFrame:CGRectMake(20, 40, 280, 80)];//初始化 nameLabel.back...
  • h643342713
  • h643342713
  • 2016年07月21日 10:33
  • 128

简单理解View的onMeasure过程

View的绘制需要经过Measure、Layout、Draw这三个流程。很多朋友在自定义View的时候,特别是对Measure过程不能十分理解,这里结合Android的一些源码和资料来简单说明。   ...
  • lovejavasman
  • lovejavasman
  • 2016年08月16日 15:45
  • 701

iOS之label行间距的缩进

开发过程中 遇到显示label的N多行,可是有时候label的整体显示符合不了我们的美的标准 现在让我们看看label本事显示多行的效果。 NSMutableParagraphStyle ...
  • WANGYURUI_wyr
  • WANGYURUI_wyr
  • 2016年07月12日 15:29
  • 956
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UILabel的简单使用介绍
举报原因:
原因补充:

(最多只允许输入30个字)