2013-02-05 35 views
4

在Xcode中,我使用固定的UILabel與字體的系統,設置在1B中的文本,並設置尺寸按適合恰好命令=是否可以在Xcode中設置系統字體?

如果我在iPad 2或iPad模擬器運行此(非視網膜),它顯示OK。如果我在iPad 3或iPad模擬器(視網膜)上運行它,它有時會切斷文本。文本截斷示例:「最小」顯示爲「M ..」

經過一番搜索之後,我發現這是由於系統字體不同而造成的:Helvetica在非視網膜iPad上。視網膜iPad上的Helvetica Neue。因此,標籤在設計時間看起來很好,但在視網膜顯示屏上被切斷。 Helvetica Neue似乎稍微寬一些。如果我在IB中將字體硬編碼爲Helvetica Neue並按下Command- =,則調整大小1個像素以適應字體。

看來Xcode中的IB使用Helvetica。我可以在某處將其切換到Helvetica Neue嗎?我希望切換Xcode中使用的字體,而不是將所有字體硬編碼爲Helvetica Neue。

+0

http://stackoverflow.com/questions/4284817/using-custom-fonts-in-interface-builder – stuartd

回答

2

您的直覺是正確的,您不想硬編碼特定字體,因爲系統的進一步更改字體會讓你的應用看起來過時或尷尬。爲了避免這種情況,請使用Autolayout(基於約束的佈局)使標籤動態適應文本。

見2013年WWDC的視頻,特別是構建用戶界面爲iOS7,更新的類型系統和以自動佈局控制在Xcode 5爲implementinglayout變化的討論的討論。

相關問題