zoukankan      html  css  js  c++  java
  • UIKit框架之UIlabel

    1.继承链:UIview:UIresponder:NSObject

    2.如果你想要使UIlabel能够和用户进行互动,需要把它实例变量的属性 userInteractionEnabled改为yes

    3.如果想要在UIlabel的下拓展一个子视图,需要把clipsToBounds的属性变成no

    4.可以存取的属性

        (1)NSString *aString = @"我喜欢你";

        NSMutableAttributedString *attribute = [[NSMutableAttributedString alloc] initWithString:aString];

        [attribute addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, 1)];

        [attribute addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:25] range:NSMakeRange(0, 1)];

        label.attributedText = attribute;//通过这个属性可以改变内容字符串的属性,如字体大小、字体颜色等

        (2)label.font = [UIFont systemFontOfSize:20];//把标签的字体发小改为20

        (3)label.textColor = [UIColor greenColor]; //把标签里面的字体改为绿色

        (4)label.textAlignment = NSTextAlignmentCenter;//把字设置在标签的中央,还有left,right,natural,justified可以选择

        (5)label.lineBreakMode = NSLineBreakByClipping;  //如果标签设置了只能写一行,那么写完一行后字符串就会被截断

        (6)label.enabled = NO; //禁用一些属性,例如文字颜色,这个属性只禁用了标签是怎么建立的属性

        (7)label.adjustsFontSizeToFitWidth = YES;//设置文字只能最多刚好达到宽的边界,但不能超过边界

        (8)label.numberOfLines = 1; //设置标签的行数只有一行

        (9)label.allowsDefaultTighteningForTruncation = YES; //允许在文字被截断之前缩进字体间距从而容纳更多的字

        (10)label.baselineAdjustment = UIBaselineAdjustmentAlignCenters; //把标签内的文字限制在标签内部,不能超过边界。同时这个属性只能在行数为1的时候才起作用

        (11)label.minimumScaleFactor = 2.0; //如果没有设置文字的大小,则文字的大小为系统默认最小文字*2

        (12)label.minimumScaleFactor = 2.0; //设置为当前文字大小的2倍

        (13)[label sizeToFit]; //设置标签自动适应文字的大小

        (14)label.highlightedTextColor = [UIColor blueColor]; //设置高光的时候文字的颜色为蓝色

               label.highlighted = YES; //设置标签的状态为高光

        (15)label.shadowColor = [UIColor orangeColor]; //设置文字的阴影为橙色

        (16)label.shadowOffset = CGSizeMake(3, 3); //设置阴影的大小

        (17)label.bounds = [label textRectForBounds:label.bounds limitedToNumberOfLines:0];//设置标签的行数为0,即行数不限制,并且令边缘可以随文字的变化而变化

        (18)CGRect textInRect = CGRectMake(100, 100, 10, 10);

                      [label drawTextInRect:textInRect]; //这方法不应该直接使用,应该让子视图重载来使用

        (19)label.preferredMaxLayoutWidth = 40; //在布局约束下,这个属性可以影响标签的大小

        (20)label.userInteractionEnabled = YES; //是否允许和用户进行交互,是否可以响应事件

        (21)label.clipsToBounds = YES; // 是否让子视图遵守父视图的大小

  • 相关阅读:
    [学习记录]Prometheus简单上手
    [学习记录]从triggerflow源码中学到的简单思想
    42 | 实战:大型全球化电商的测试基础架构设计
    41 | 从小工到专家:聊聊测试执行环境的架构设计(下)
    40 | 从小工到专家:聊聊测试执行环境的架构设计(上)
    39 | 从小作坊到工厂:什么是Selenium Grid?如何搭建Selenium Grid?
    python之jsonpath
    38 | 测试数据的“银弹”- 统一测试数据平台(下)
    Python replace()方法
    37 | 测试数据的“银弹”- 统一测试数据平台(上)
  • 原文地址:https://www.cnblogs.com/lelun/p/5677528.html
Copyright © 2011-2022 走看看