2017-04-24 104 views
1

我想改變應用程序的默認字體,所以我在AppDelegate的那樣更改UILabel的大小改變其字體名稱

UILabel.appearance().font = UIFont(name: "PartyLetPlain", size: 17)

和它的工作如預期,直到我試圖改變字體大小。

我試圖改變字體大小,像這樣

categoryName.font = UIFont(name: categoryName.font.fontName, size: 17) 

categoryName.font.fontWithSize(20)

改變字體大小它改變了的fontName和它,以便只爲一個變化我評論的

印刷該字體名稱 .SFUIText

UILabel.appearance().font = UIFont(name: "PartyLetPlain", size: 17)

從AppDelegate中更改字體從故事板,即使在更改字體大小後也能很好地工作。

如何解決這個問題?

回答

0

.SFUIText是默認系統字體,因此你得到相同的結果,當你分配。

外觀不會改變屬性,一旦他們在窗口中。 創建自定義標籤類並使用它。

或者只是使用您的字體UIFont(name: "PartyLetPlain", size: 17)更改字體大小。它會工作。

爲了美觀請聯繫https://developer.apple.com/reference/uikit/uiappearance

+0

雅所以如何保持我已經在全球設置了的UILabel相同的字體? –

+0

您的解決方案是正確的UILabel.appearance()。font = UIFont(name:「PartyLetPlain」,size:17)。但是外觀一旦進入窗口就不會改變屬性。每當你想改變它使用完整的UIFont(名稱:「PartyLetPlain」,size:17)的字體來設置外觀不起作用。或者您可以創建自定義標籤類並使用它。 – AkBombe