iOS开发之UI篇(3)—— UILabel

来源:互联网 发布:女用避孕套 知乎 编辑:程序博客网 时间:2024/06/16 20:38

版本
Xcode 9.1

@interface UILabel : UIView <NSCoding, UIContentSizeCategoryAdjusting>

UILabel继承自UIView。

一、纯代码创建

    // 实例化一个UILabel    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 100, 200, 200)];    /* 常用属性 */    // 设置字体大小    label.font = [UIFont systemFontOfSize:23];    // 设置加粗字体大小    label.font = [UIFont boldSystemFontOfSize:23];    // 获取系统的字体库    NSArray *fontArr = [UIFont familyNames];    //返回系统所有的字体    NSLog(@"%@",fontArr);    // 设置字体    label.font = [UIFont fontWithName:@"Hiragino Sans" size:18];    // 设置label背景颜色    label.backgroundColor = [UIColor lightGrayColor];    // 设置阴影    label.shadowOffset = CGSizeMake(5, 5);      // X方向的偏移量5,Y方向的偏移量5    // 阴影颜色    label.shadowColor = [UIColor redColor];    // 设置多行显示    label.numberOfLines = 2;    // 最多显示两行    // 0: 一直自动换行,直到不能显示为止    label.numberOfLines = 0;    /* 自适应内容大小 */    NSString *str = @"111222333dsfghjkhgfdsfdgfhgjkgdfghjjdffghjf";    // 以下是固定格式,计算str字符串占用的区域大小    CGSize size = [str boundingRectWithSize: CGSizeMake(200, 200)       // label的尺寸(最大区域)                                    options: NSStringDrawingUsesLineFragmentOrigin                                 attributes: @{NSFontAttributeName:label.font}   //label.font: 按该字体来算空间                                    context: nil].size;    // 设置显示的label的大小和计算的大小相匹配    label.frame = CGRectMake(50, 100, size.width, size.height);    // 设置显示文字    label.text = str;    // 添加label到view    [self.view addSubview:label];

效果如下:


二、storyboard创建

和UIView类似,创建完后我们可以直接编辑属性或者关联到代码里。


搜索label
搜索label


属性栏
属性栏

关联到代码里:

@interface ViewController ()@property (weak, nonatomic) IBOutlet UILabel *label;@end

然后用代码编辑:

    // 设置字体颜色    self.label.textColor = [UIColor blueColor];    // 设置圆角    self.label.layer.cornerRadius = 20;

效果图: