2013-07-21 27 views
1

我想在我的應用程序中添加和使用字體。我已經按照這個帖子作爲參考,但我不能得到它的工作。如何在我的xcode項目中添加和使用自定義字體

我已將字體Frutiger95UltraBlack.ttf添加爲支持文件,然後將其添加到我的{app-name} -Info.plist中。

然後嘗試在我的應用程序代理中使用它來更改我的UINavegationBar但沒有任何反應。

我在想什麼?

[[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: 
                  [UIColor whiteColor], UITextAttributeTextColor, 
                  [UIFont fontWithName:@"Frutiger95UltraBlack" size:16.0], UITextAttributeFont,nil]]; 

+3

'[UIFont fontWithName:...]更換UITextAttributeTextColor'要求*的PostScript名*字體作爲參數,這可能是從文件名不同的。也許單獨調用該方法來檢查字體是否已加載。 –

+0

@MartinR這解決了我的問題。請發佈它作爲答案,謝謝 –

+0

我很高興它有幫助,答案補充說。 –

回答

3

(從我的上述評論:) [UIFont fontWithName:...]需要Postscript名稱的字體作爲參數,這可能是從文件名不同的

0

確保您的字體在你複製包資源。

如果我們沒有添加字體到目標然後有時它會發生,你的字體不會自動添加到複製包資源。

還確保您的字體名稱與您使用的相同。你可以 通過在fontBook中打開字體來做到這一點。

,如果你有不同的字體像普通/粗體/斜體,那麼你要這個名字連接到您的字體名像這個 - Frutiger95UltraBlack-Bold

安裝你的Mac上的字體system.iterate您的所有字體編程,寫NSLog的fontName,通過這種方式,你可以確保字體的名稱,即PostScriptName。

+0

它已經在那裏。 –

0

僅供參考,UITextAttributeTextColorUITextAttributeFont已在iOS 7.0中棄用。

而是與NSForegroundColorAttributeNameUITextAttributeFontNSFontAttributeName

相關問題