2012-02-19 110 views
1

我的UIView上有UILabel。我總是爲我的標籤(從後端)獲取各種數據。我有一些rect在View上顯示文本(我將它設置爲uilabel大小,這個大小是不變的)。具有恆定大小和動態字體大小的UILabel取決於文本

如何爲我的UILabel設置動態字體的大小? 我只需要顯示具有實際字體大小的文本數據,用於我的矩形邊界。如果文本真的很長,並且最小的字體將包裝文本 - 我需要應用最小的字體大小來顯示更多的文本數據。

(我的標籤可以是多線的大小,以const的矩形邊界)

回答

0

有財產UILable - adjustToFitWidth在廈門國際銀行,在那裏你可以給最小的字體大小。所以如果你的文字變得越來越長,那麼它會自動減小字體大小以在標籤內調整它。

注意:adjustToFitWidth中給出的任何值都是最小限制,所以您的字體大小始終大於或等於該值。

享受編碼:)

+0

adjustsFontSizeToFitWidth和minimumFontSize僅影響單行文本。但我告訴了許多線uilabel。我不提這個,對不起。 – 2012-02-19 13:21:38

0

我會這樣做:獲取NSString字符數。根據該字符數,計算大小。

NSString *myString = @"Hello"; 
int myInt = myString.length; 
float fontSize = PUT_A_VALUE_HERE/myInt; 

您將玩變量PUT_A_VALUE_HERE,直到您獲得所需的結果。之後,更改字體大小

[lblYourUILabel setFont:[UIFont fontWithName:fontName size:fontSize]]; 
+0

它的工作,如果你只使用等寬字體。我使用Helvetica,非等寬字體。 – 2012-02-19 13:41:39

相關問題