zoukankan      html  css  js  c++  java
  • label标签的属性

    //label标签的属性
     1 - (void)viewDidLoad {
     2     //初始化一个label1标签对象,初始化有很多方法,最原始的就是init,此处用带有frame的方法
     3     UILabel *label1=[[UILabel alloc]initWithFrame:CGRectMake(30, 30, 300, 30)];
     4     //设置内容
     5     label1.text=@"我是 label 123 hello world 你好吗?在家吗?";
     6     //设置文字颜色
     7     label1.textColor=[UIColor whiteColor];
     8     //设置标签背景,clearColor是透明背景的意思
     9     label1.backgroundColor=[UIColor redColor];
    10     //设置文字对齐
    11     label1.textAlignment=NSTextAlignmentCenter;
    12     //设置字体,UIFont类有很多设置字体的方法,CMD+点击可查看。
    13     label1.font=[UIFont boldSystemFontOfSize:23];
    14     //这个字体设置会覆盖上面的设置,但字是否会倾斜加粗则需要看具体的字体
    15     label1.font=[UIFont italicSystemFontOfSize:23];
    16     //打印出所有系统字体,也是用得UIFont里一个方法,可CMD+点击查看
    17     NSArray *arr1=[UIFont familyNames];
    18     for (NSString *name in arr1) {
    19         NSLog(@"%@",name);
    20     }
    21     //一般可用,同时修改字体和字号的方法
    22     label1.font=[UIFont fontWithName:@"Georgia" size:40];
    23     //设置阴影颜色
    24     label1.shadowColor=[UIColor blackColor];
    25     //设置阴影偏移值,需要CGSizeMake值,第一个表示左右偏移,>0向右;第二个表示上下偏移,>0向下
    26     label1.shadowOffset=CGSizeMake(2, 5);
    27     //设置高亮,如果设置为YES,则下面的高亮颜色会替换原先的textColor,而如果设置为No,或者高亮没开启,则高亮颜色设置无效,还是显示textColor值
    28     label1.highlighted=YES;
    29     label1.highlightedTextColor=[UIColor redColor];
    30     //根据标签大小自动调整文字大小,如否不开启,则多余的文字用...表示
    31     label1.adjustsFontSizeToFitWidth=YES;
    32     //文字与标签的对齐,依次是文本顶端、中间、底端于标签的中线对齐。可CMD+点击以下任意一个值,发现这是一枚举,默认值是UIBaselineAjustmentAlignBaselines
    33     //以下方法仅当只有一行文本时有效
    34     label1.baselineAdjustment=UIBaselineAdjustmentAlignBaselines;
    35     label1.baselineAdjustment=UIBaselineAdjustmentAlignCenters;
    36     label1.baselineAdjustment=UIBaselineAdjustmentNone;
    37     
    38     UILabel *label2=[[UILabel alloc]initWithFrame:CGRectMake(30, 80, 300, 80)];
    39     label2.text=@"hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world ";
    40     //文字很多时,还是显示1行,最后以...省略
    41     //设置显示的行数,0是不限制多少行,但由于标签高度一定,如果显示不下,最终仍以...省略
    42     label2.numberOfLines=0;
    43     //设置换行和最后截断/省略
    44     //NSLineBreakByWordWrapping-以单词为单位换行,以单词为单位截断(即没有...,显示不了的直接截断不显示),默认,CMD+点击发现也是一枚举
    45     //NSLineBreakByCharWrapping-以字符为单位换行,以字符为单位截断
    46     //NSLineBreakByClipping-以单词为单位换行,以字符为单位截断
    47     //NSLineBreakByTruncatingHead-以单位为单位换行,以字符为单位截断,但最后一行的前面是...省略,如果是一行,则就在一行的开头有...
    48     //NSLineBreakByTruncatingTail-以单位为单位换行,以字符为单位截断,但最后一行的末尾是...省略,如果是一行,则就在一行的末尾有...
    49     //NSLineBreakByTruncatingMiddle-以单位为单位换行,以字符为单位截断,但最后一行的中间是...省略,如果是一行,则就在一行的中间有...
    50     label2.lineBreakMode=NSLineBreakByTruncatingHead;
    51     
    52     //根据内容调整标签大小,三部曲
    53     UILabel *label3=[[UILabel alloc]initWithFrame:CGRectZero];
    54     label3.text=@"标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3 标签3";
    55     //1、计算内容大小,即获得高和宽,其实宽一般都给定了,只是计算高,而高宽二位对象一般是一个CGSize
    56     CGSize size1=[label3.text sizeWithFont:label3.font constrainedToSize:CGSizeMake(300, 1000) lineBreakMode:NSLineBreakByCharWrapping];
    57     //2、设置显示行数,即不限制函数
    58     label3.numberOfLines=0;
    59     //3、利用size1设置标签的宽和高
    60     label3.frame=CGRectMake(30, 180, size1.width, size1.height);
    61     //把上面初始化的标签label1、2、3增加到当前的view里,一并显示出来
    62     [self.view addSubview:label1];
    63     [self.view addSubview:label2];
    64     [self.view addSubview:label3];
    65     [super viewDidLoad];
    66     // Do any additional setup after loading the view, typically from a nib.
    67 }
    View Code
  • 相关阅读:
    丰清杨 作业 160809315
    自学C++游戏程序开发学习顺序(转)
    哈佛幸福课相关&积极心理学经典英文原版书籍读书笔记(连载中)(转)
    程序员追求的是什么?
    如何学好游戏编程?
    计算机专业的学生必须掌握的五门课程
    [译]学好数学能让程序员的水平更高
    天下没有免费的午餐
    各个类型书籍推荐
    Peter Norvig:自学编程,十年磨一剑
  • 原文地址:https://www.cnblogs.com/starainDou/p/5079790.html
Copyright © 2011-2022 走看看