糯米文學吧

位置:首頁 > 範文 > 工作總結

iOS應用中UILabel文字顯示效果的常用設置小結

創建UIlabel對象

iOS應用中UILabel文字顯示效果的常用設置小結

複製代碼 代碼如下:

UILabel* label = [[UILabel alloc] initWithFrame:ds];

設置顯示文本

複製代碼 代碼如下:

= @"This is a UILabel Demo,";

設置文本字體

複製代碼 代碼如下:

= [UIFont fontWithName:@"Arial" size:35];

設置文本顏色

複製代碼 代碼如下:

Color = [UIColor yellowColor];

設置文本水平顯示位置

複製代碼 代碼如下:

Alignment = UITextAlignmentCenter;

設置背景顏色

複製代碼 代碼如下:

groundColor = [UIColor blueColor];

設置單詞折行方式

複製代碼 代碼如下:

BreakMode = UILineBreakModeWordWrap;

設置label是否可以顯示多行,0則顯示多行

複製代碼 代碼如下:

erOfLines = 0;

動態調整UILabel高度

複製代碼 代碼如下:

[label sizeToFit];

根據內容大小,動態設置UILabel的高度

複製代碼 代碼如下:

CGSize size = [ sizeWithFont: constrainedToSize: lineBreakMode:BreakMode];

CGRect rect = e;

ht = ht;

e = rect;

換行模式

複製代碼 代碼如下:

typedef enum {

UILineBreakModeWordWrap = 0, // 以空格為邊界,保留整個單詞

UILineBreakModeCharacterWrap, // 保留整個字符

UILineBreakModeClip, // 到邊界為止

UILineBreakModeHeadTruncation, // 省略開始,以……代替

UILineBreakModeTailTruncation, // 省略結尾,以……代替

UILineBreakModeMiddleTruncation, // 省略中間,以……代替,多行時作用於最後一行

} UILineBreakMode;

其他:

UILineBreakModeWordWrap = 0,

以單詞為單位換行,以單位為單位截斷。

UILineBreakModeCharacterWrap,

以字符為單位換行,以字符為單位截斷。

UILineBreakModeClip,

以單詞為單位換行。以字符為單位截斷。

UILineBreakModeHeadTruncation,

以單詞為單位換行。如果是單行,則開始部分有省略號。如果是多行,則中間有省略號,省略號後面有4個字符。

UILineBreakModeTailTruncation,

以單詞為單位換行。無論是單行還是多行,都是末尾有省略號。

UILineBreakModeMiddleTruncation,

以單詞為單位換行。無論是單行還是多行,都是中間有省略號,省略號後面只有2個字符。

技巧:根據字符串長度自動適應寬度和高度

複製代碼 代碼如下:

//這個frame是初設的,沒關係,後面還會重新設置其size。

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];

erOfLines = 0;

groundColor = [UIColor clearColor];

NSDictionary *attributes = @{NSFontAttributeName:[UIFont systemFontOfSize:20],};

NSString *str = @"abcdefg你上課可是你的拿到了";

CGSize textSize = [str boundingRectWithSize:CGSizeMake(100, 100) options:NSStringDrawingTruncatesLastVisibleLine attributes:attributes context:nil];;

[label setFrame:CGRectMake(100, 100, h, ht)];

Color = [UIColor greenColor];

= str;

[ addSubview:label];