UILabel基础篇

来源:互联网 发布:百恒网络 编辑:程序博客网 时间:2024/05/21 11:07

        苹果官方UILabel的解释为:Implements a read-only text view. A label can contain an arbitrary amount of text, but UILabel may shrink, wrap, or truncate the text, depending on the size of the bounding rectangle and properties you set. You can control the font, text color, alignment, highlighting, and shadowing of the text in the label.

       大概意思为:UILabel是一个只读的文本视图(UILabel的父视图是View),可以包含任意数字的文本。但是要注意的是要设置好UILabel的边界,不然可能会出现文本内容显示不完全的情况。同时我们可以自己设置字体的大小,字体的颜色,对其方式(左,中,右),是否要高亮显示和初始时阴影的文本。

        UILabel 属性:

         text:文本

         font:字体大小  (默认的为17pt)

         textColor :字体颜色  (默认是黑色的)

         shadowColor:文本的阴影 (默认是没有阴影的)

         shadowOffset:设置文本阴影的偏移量大小 (默认是  CGSizeMake(0, -1))

         textAlignment:文本对其方式  (默认向左对齐)

         lineBreakMode:换行模式

         NSLineBreakByTruncatingTail:截取末尾部分以省略号为结尾      示例:abc...

         NSLineBreakByTruncatingHead:截取开头部分以省略号为开头    示例:...abc

         NSLineBreakByTruncatingMiddle: 截取中间部分用省略号代替     示例:ab...cd

         NSLineBreakByWordWrapping以空格为边界,保留单词

    NSLineBreakByWordWrapping:保留整个字符

    NSLineBreakByClipping:简单剪切

    attributedText:富文本 (用于编辑不同颜色不同字体的文本,在iOS6之后加入的属性,设置之后原来的Label属性将会不 无效)

    highlightedTextColor:文本高亮属性 (默认是没有高亮的,相当于被点击的状态以highlighted一起使用)

    highlighted:是否设置高亮 (默认为否)

    userInteractionEnabled允许用户交互 (默认是不能用户交互的)

    enabled:文本内容是否可变  (默认情况为内容可变)

    numberOfLines:文本行数 (为0时没有最大行数限制会实现自动换行,但要求Label的高度足够。默认是一行)

    adjustsFontSizeToFitWidth:文本文字自适应 (默认为不是自适应,设置只适应后文本的字体大小会根据Lable的宽度自己调整,实际是通过调整每个字之间的距离)

    baselineAdjustment:文本的基线位置 (只有文本只有一行的时候有效)

    UIBaselineAdjustmentAlignBaselines:文本最上端于label中线对齐 (字体变小之后文本距离labal顶部的距离是不变的)
    UIBaselineAdjustmentAlignCenters:文本中线于label中线对齐 (字体变小之后文本以label.center.y的距离是不变的)
    UIBaselineAdjustmentNone:文本最低端与label中线对齐  (字体变小之后文本距离label底部的距离是不不变的)
  

    minimumScaleFactor:收缩比例 (默认情况下为0.0)

    minimumFontSize:最小字体  (已经被弃用)

    一般情况下是:adjustsFontSizeToFitWidthbaselineAdjustment,minimumScaleFactor三个属性一起连用来形成一个满足需求的文本类型。

    allowsDefaultTighteningForTruncation:允许默认收紧截断 (iOS9加入的一个属性默认是no)

  UIlabel 方法

    - (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines;

    - (void)drawTextInRect:(CGRect)rect;

    这两个方法一般不会直接调用,一般在集成或者自定义新的Label类的时候调用这两个方法。第一个方法用于Label的布局大小,第二个方法用于显示文本部分。
 

3 0
原创粉丝点击