2013-10-04 60 views
1

在iOS 7中,此方法已被棄用。該文件是模糊的替換和指出:sizeWithFont使用哪種替代方法:minFontSize:actualFontSize:forWidth:lineBreakMode:?

這種方法沒有確切的替代方法。人機界面 指南不鼓勵以這種方式更改字體大小,因爲它會導致 不一致的用戶體驗。對於某些用例,請參閱UILabel作爲可能的 替代方案。

我發現了一個solution,但它忽略了UILabel可以縮小文本,如果需要的話。沒有最小字體大小參數。

有沒有人找到了一種替代方案,當你真的想要計算標籤中某些文本的邊界矩形尺寸時,文本太長時會縮小字體大小?

+1

重複的:http://stackoverflow.com/q/19195541/751932 – Speakus

回答

1

你必須愛在這一個蘋果的評論...

好像你唯一的選擇是自己實現使用boundingRectWithSize:options:attributes:context:原有的功能和棄用功能的詳細描述背後的邏輯(「討論」下)。

使用boundingRectWithSize:options:attributes:context:您可以指定具有特定大小的UIFont,並獲得結果寬度。然後,您可以將結果寬度與您所需的寬度進行比較。然而,您仍然需要一些試驗和錯誤來確定實際的字體大小。