iOS應(yīng)用中UILabel文字顯示效果的常用設(shè)置總結(jié)
更新時間:2016年05月24日 09:34:28 作者:mango-bing
UILabel組件可以用來設(shè)置文字內(nèi)容的排版與字體效果等,功能非常多,下面就來為大家整理一下基本的iOS應(yīng)用中UILabel文字顯示效果的常用設(shè)置總結(jié)
創(chuàng)建UIlabel對象
復(fù)制代碼 代碼如下:
UILabel* label = [[UILabel alloc] initWithFrame:self.view.bounds];
設(shè)置顯示文本
復(fù)制代碼 代碼如下:
label.text = @"This is a UILabel Demo,";
設(shè)置文本字體
復(fù)制代碼 代碼如下:
label.font = [UIFont fontWithName:@"Arial" size:35];
設(shè)置文本顏色
復(fù)制代碼 代碼如下:
label.textColor = [UIColor yellowColor];
設(shè)置文本水平顯示位置
復(fù)制代碼 代碼如下:
label.textAlignment = UITextAlignmentCenter;
設(shè)置背景顏色
復(fù)制代碼 代碼如下:
label.backgroundColor = [UIColor blueColor];
設(shè)置單詞折行方式
復(fù)制代碼 代碼如下:
label.lineBreakMode = UILineBreakModeWordWrap;
設(shè)置label是否可以顯示多行,0則顯示多行
復(fù)制代碼 代碼如下:
label.numberOfLines = 0;
動態(tài)調(diào)整UILabel高度
復(fù)制代碼 代碼如下:
[label sizeToFit];
根據(jù)內(nèi)容大小,動態(tài)設(shè)置UILabel的高度
復(fù)制代碼 代碼如下:
CGSize size = [label.text sizeWithFont:label.font constrainedToSize:self.view.bounds.size lineBreakMode:label.lineBreakMode];
CGRect rect = label.frame;
rect.size.height = size.height;
label.frame = rect;
換行模式
復(fù)制代碼 代碼如下:
typedef enum {
UILineBreakModeWordWrap = 0, // 以空格為邊界,保留整個單詞
UILineBreakModeCharacterWrap, // 保留整個字符
UILineBreakModeClip, // 到邊界為止
UILineBreakModeHeadTruncation, // 省略開始,以……代替
UILineBreakModeTailTruncation, // 省略結(jié)尾,以……代替
UILineBreakModeMiddleTruncation, // 省略中間,以……代替,多行時作用于最后一行
} UILineBreakMode;
其他:
UILineBreakModeWordWrap = 0,
以單詞為單位換行,以單位為單位截斷。
UILineBreakModeCharacterWrap,
以字符為單位換行,以字符為單位截斷。
UILineBreakModeClip,
以單詞為單位換行。以字符為單位截斷。
UILineBreakModeHeadTruncation,
以單詞為單位換行。如果是單行,則開始部分有省略號。如果是多行,則中間有省略號,省略號后面有4個字符。
UILineBreakModeTailTruncation,
以單詞為單位換行。無論是單行還是多行,都是末尾有省略號。
UILineBreakModeMiddleTruncation,
以單詞為單位換行。無論是單行還是多行,都是中間有省略號,省略號后面只有2個字符。
技巧:根據(jù)字符串長度自動適應(yīng)寬度和高度
復(fù)制代碼 代碼如下:
//這個frame是初設(shè)的,沒關(guān)系,后面還會重新設(shè)置其size。
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];
label.numberOfLines = 0;
label.backgroundColor = [UIColor clearColor];
NSDictionary *attributes = @{NSFontAttributeName:[UIFont systemFontOfSize:20],};
NSString *str = @"abcdefg你上課可是你的拿到了";
CGSize textSize = [str boundingRectWithSize:CGSizeMake(100, 100) options:NSStringDrawingTruncatesLastVisibleLine attributes:attributes context:nil].size;;
[label setFrame:CGRectMake(100, 100, textSize.width, textSize.height)];
label.textColor = [UIColor greenColor];
label.text = str;
[self.view addSubview:label];
您可能感興趣的文章:
- iOS基于 UILabel實現(xiàn)文字添加描邊功能
- iOS中UILabel設(shè)置居上對齊、居中對齊、居下對齊及文字置頂顯示
- iOS如何將UIButton中的圖片與文字上下對齊詳解
- 詳解IOS 利用storyboard修改UITextField的placeholder文字顏色
- iOS改變UITextField占位文字顏色的三種方法
- iOS開發(fā)中Swift3 監(jiān)聽UITextView文字改變的方法(三種方法)
- IOS開發(fā)UIButton(左邊圖片右邊文字效果)
- iOS設(shè)置UIButton文字顯示位置和字體大小、顏色的方法
- iOS中的UITextView文字輸入光標(biāo)使用技巧小結(jié)
- iOS開發(fā)UI之弧形文字
相關(guān)文章
詳解iOS的UI開發(fā)中控制器的創(chuàng)建方法
這篇文章主要介紹了iOS的UI開發(fā)中控制器的創(chuàng)建方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-11-11Objective-C處理空字符串和頁面?zhèn)髦导白远x拷貝
這篇文章主要介紹了Objective-C處理空字符串和頁面?zhèn)髦导白远x拷貝的相關(guān)方法,在iOS應(yīng)用項目開發(fā)中經(jīng)常會用到,需要的朋友可以參考下2016-01-01