版本
Xcode 9.1
@interface UILabel : UIView <NSCoding, UIContentSizeCategoryAdjusting>
UILabel繼承自UIView翼悴。
一渺蒿、純代碼創(chuàng)建
// 實(shí)例化一個(gè)UILabel
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 100, 200, 200)];
/* 常用屬性 */
// 設(shè)置字體大小
label.font = [UIFont systemFontOfSize:23];
// 設(shè)置加粗字體大小
label.font = [UIFont boldSystemFontOfSize:23];
// 獲取系統(tǒng)的字體庫(kù)
NSArray *fontArr = [UIFont familyNames]; //返回系統(tǒng)所有的字體
NSLog(@"%@",fontArr);
// 設(shè)置字體
label.font = [UIFont fontWithName:@"Hiragino Sans" size:18];
// 設(shè)置label背景顏色
label.backgroundColor = [UIColor lightGrayColor];
// 設(shè)置陰影
label.shadowOffset = CGSizeMake(5, 5); // X方向的偏移量5蚜迅,Y方向的偏移量5
// 陰影顏色
label.shadowColor = [UIColor redColor];
// 設(shè)置多行顯示
label.numberOfLines = 2; // 最多顯示兩行
// 0: 一直自動(dòng)換行耘柱,直到不能顯示為止
label.numberOfLines = 0;
/* 自適應(yīng)內(nèi)容大小 */
NSString *str = @"111222333dsfghjkhgfdsfdgfhgjkgdfghjjdffghjf";
// 以下是固定格式杖们,計(jì)算str字符串占用的區(qū)域大小
CGSize size = [str boundingRectWithSize: CGSizeMake(200, 200) // label的尺寸(最大區(qū)域)
options: NSStringDrawingUsesLineFragmentOrigin
attributes: @{NSFontAttributeName:label.font} //label.font: 按該字體來(lái)算空間
context: nil].size;
// 設(shè)置顯示的label的大小和計(jì)算的大小相匹配
label.frame = CGRectMake(50, 100, size.width, size.height);
// 設(shè)置顯示文字
label.text = str;
// 添加label到view
[self.view addSubview:label];
效果如下:
二苍苞、storyboard創(chuàng)建
和UIView類似凤薛,創(chuàng)建完后我們可以直接編輯屬性或者關(guān)聯(lián)到代碼里一膨。
關(guān)聯(lián)到代碼里:
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UILabel *label;
@end
然后用代碼編輯:
// 設(shè)置字體顏色
self.label.textColor = [UIColor blueColor];
// 設(shè)置圓角
self.label.layer.cornerRadius = 20;
// ...
效果圖: