//
// UiLabelController.m
// AppUI元件學習
//
// Created by 麥子 on 15/6/14.
// Copyright (c) 2015年 麥子. All rights reserved.
//
#import "UiLabelController.h"
// UILabel 學習
@implementation UiLabelController
- (void)viewDidLoad{
[super viewDidLoad];
self.view.backgroundColor = [UIColor blackColor];
NSLog(@"label 開始初始化");
[self createView:self.view];
}
// UILabel 的常用屬性
- (void)createView:(id)uiView{
CGRect rect = CGRectMake(30,80, 200, 100);
UILabel *label = [[UILabel alloc] initWithFrame:rect];
label.text = @"文本學習";
label.textColor = [UIColor blackColor];
// 文字排版,
label.textAlignment = NSTextAlignmentCenter;
label.backgroundColor = [UIColor whiteColor];
// 設定字型
NSArray *array = [UIFont familyNames];
for (NSString *str in array) {
NSLog(@"字型名稱---%@",str);
}
label.font = [UIFont fontWithName:@"Papyrus" size:20];
//加粗
label.font = [UIFont systemFontOfSize:30];
label.font = [UIFont boldSystemFontOfSize:30];
label.font = [UIFont italicSystemFontOfSize:30];
// 設定陰影
label.shadowColor = [UIColor redColor];
// 設定陰影偏移量
label.shadowOffset = CGSizeMake(5, 50);
// 設定高亮
label.highlighted = YES;
label.highlightedTextColor = [UIColor purpleColor]; // 如果文本原來是黑色,設定高亮後,就顯示高亮顔色了
// 設定基線 : 預設是文字的最上端和中線對齊
// label.baselineAdjustment = UIBaselineAdjustmentAlignCenters; // 文本中線和label中線對齊
// label.baselineAdjustment = UIBaselineAdjustmentAlignBaselines; // 預設是文字的最上端和中線對齊
label.baselineAdjustment = UIBaselineAdjustmentNone; // 文本最下端和中線對齊
CGRect rect2 = CGRectMake(30,280, 200, 50);
UILabel *label2 = [[UILabel alloc] initWithFrame:rect2];
label2.text = @"字元串過多的時候,常用的一些屬性有哪一些,字元串過多的時候,常用的一些屬性有哪一些,";
label2.textColor = [UIColor redColor];
label2.backgroundColor = [UIColor whiteColor];
// 顯示最大行數
label2.numberOfLines = 0;//設定為0,表示不限制顯示行數,如果是高度不夠的話,還是不能顯示出來。出現。。。。預設
// 設定内容超過寬度的模式
label2.lineBreakMode = NSLineBreakByTruncatingMiddle;
// 動态計算label的大小
UILabel *label3 = [[UILabel alloc] initWithFrame:CGRectZero];
label3.text = @"動态計算label的大小,動态計算label的大小,動态計算label的大小,動态計算label的大小,動态計算label的大小,動态計算label的大小**********";
label3.numberOfLines = 0;
// 另一種寫法
// NSDictionary *dic = @{NSFontAttributeName:[UIFont systemFontOfSize:20.0]};
NSMutableDictionary *dic = [[NSMutableDictionary alloc] init];
[dic setValue:label3.font forKey:NSFontAttributeName];
// IOS7通過這個方法計算出矩形的大小,通過你設定的字型的一些屬性設定,動态算出大小
CGRect rect3 = [label3.text boundingRectWithSize:CGSizeMake(180, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:dic context:nil];
label3.frame = CGRectMake(30,300,rect3.size.width, rect3.size.height);
label3.backgroundColor = [UIColor redColor];
UIView *view = (UIView *)uiView; // 強轉的時候,需要指定類型
[view addSubview:label];
[view addSubview:label2];
[view addSubview:label3];
}
@end