2013-05-17 66 views
2

當前行爲的UILabel截斷甚至當它具有剩餘行

我有一個多UILabel具有特定大小的矩形框架。 字體和全部設置爲它將顯示最多三行,超過它將截斷。

異常行爲

異常行爲,有時我有一個完整的一行或兩行,但剩餘的線截斷。這是因爲該行末尾的單詞太大而不適合該行的末尾。

預期的行爲

我祝願UILabel填充所有三個行,然後截斷。

這是我當前的代碼

[_detailedTextLabel setNumberOfLines:0]; 
[_detailedTextLabel setLineBreakMode:UILineBreakModeTailTruncation]; 
[_detailedTextLabel setAdjustsFontSizeToFitWidth:YES]; 
+0

只需卸下lineBreakMode因爲NSLineBreakModeWordWrap是默認的。 –

回答

3

使用另一種換行方式。

[_detailedTextLabel setLineBreakMode:NSLineBreakByWordWrapping]; 

,並確保該標籤具有適當的高度(假設width已設置):

CGSize size = [_detailedTextLabel sizeThatFits:CGSizeMake(width, CGFLOAT_MAX)]; 
_detailedTextLabel.frame = CGRectMake(0, 0, size.width, size.height); 
+1

實際上它是標籤高度的問題。 Thanx @Michal –

0

嘗試使用此一個。你需要寫這兩行。

label.lineBreakMode = UILineBreakModeWordWrap; 
label.numberOfLines = 0; 
+0

已經在使用它。已更新我的問題。 –

+0

你的標籤的高度是多少? –