UILabel

本文介绍了iOS开发中UILabel的基本使用方法及高级特性,包括如何调整UILabel的位置、大小、字体,实现自动换行、字体自动调整以适应宽度,以及如何通过计算文本的实际尺寸来自适应UILabel的高度。

    //标签类,UIlabel,是iPhone界面最基本的控件,主要用来显示文本信息

    // UILabel *lable1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];

    //可以改变lable1的位置

    //lable1.frame = CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)


    UILabel *lable1 = [[UILabel alloc]initWithFrame:CGRectMake(50,50,200, 200)];

    lable1.text = @"自动换行";

    lable1.backgroundColor = [UIColor redColor];

    lable1.font = [UIFont systemFontOfSize:20];//字体大小,默认17

    lable1.font = [UIFont boldSystemFontOfSize:20];//字体加粗


//    UILable的行数,默认为0时自动换行

//    lable1.numberOfLines = 0;


//    设置对齐方式

//    Label1.textAlignment = UITextAlignmentLeft;//文字靠左

//    lable1.textAlignment = UITextAlignmentCenter;//文字居中

//    label1.textAlignment = UITextAlignmentRight;//文字靠右


//    省略号的位置

//    lable1.lineBreakMode = NSLineBreakByTruncatingHead;

//    lable1.lineBreakMode = NSLineBreakByTruncatingMiddle;

//    lable1.lineBreakMode = NSLineBreakByTruncatingTail;


//    [self.view addSubview:lable1];



    //文字字体自动缩小

    UILabel *lable2 = [[UILabel alloc]initWithFrame:CGRectMake(50, 50, 200, 200)];

    lable2.text = @"自动换行自动换行自动换行自动换行自动换行自动换行";

    lable2.font = [UIFont systemFontOfSize:30];

    lable2.backgroundColor = [UIColor blackColor];

    lable2.textColor = [UIColor whiteColor];


    //自动调整字体大小

    lable2.adjustsFontSizeToFitWidth = YES;

    //字体缩放下限

    lable2.minimumScaleFactor = 0.5;

//    [self.view addSubview:lable2];



    //自适应高度

    //长文本

    UILabel *lable3 = [[UILabel alloc]initWithFrame:CGRectMake(50, 50, 200, 200)];

    lable3.textColor = [UIColor yellowColor];

    lable3.backgroundColor = [UIColor redColor];


    lable3.text = @"点击以获取最新消息点击以获取最新消息点击以获取最新消息点击以获取最新消息点击以获取最新消息点击以获取最新消息点击以获取最新消息";


    CGRect rect1 = [lable3.text boundingRectWithSize:CGSizeMake(300, CGFLOAT_MAX//计算300 30字号的lable高度

                                             options:NSStringDrawingUsesLineFragmentOrigin  //字符串绘图选项

                                          attributes:@{NSFontAttributeName:lable3.font} //构建一个字体大小的字典,字体大小要跟定义的lable一样

                                             context:nil];  //上下文

    lable3.frame = CGRectMake(20, 20, 300, rect1.size.height);


    lable3.numberOfLines = 0;


    lable3.center = self.view.center;


//    [self.view addSubview:lable3];

    label = lable3;


    //短文本

    UILabel *label4 = [[UILabel alloc]init];

    label4.text = @"还有半个小时下课";

    label4.backgroundColor = [UIColor blackColor];

    label4.textColor = [UIColor whiteColor];


    CGSize size = [label4.text sizeWithAttributes:@{NSFontAttributeName:label4.font}];

    label4.frame = CGRectMake(0, 0, size.width, size.height);



    [self.view addSubview:label4];


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值