2016-07-26 41 views
1

我下面不工作 Download here and test自定義字體在IOS(雜項文件類型)沒有顯示

我添加了所有OTF文件中的.plist並使用名稱設置字體的使用代碼字體聖Fransico字體經理如下

lbl_1.font = [UIFont fontWithName:@"SFUIDisplay-Bold" size:20]; 
lbl_2.font = [UIFont fontWithName:@"SFUIDisplay-Medium" size:20]; 
lbl_3.font = [UIFont fontWithName:@"SFUIText-Light" size:20]; 
lbl_4.font = [UIFont fontWithName:@"SFUIText-Regular" size:20]; 
lbl_5.font = [UIFont fontWithName:@"SFUIText-Semibold" size:20]; 

注:我下載使用ZIL答案

+0

是否在項目中添加了otf文件? –

+0

我添加了一個相當完整的答案,我希望你找到你需要的內容:) –

回答

3

有對字體不工作常犯的錯誤,讓我全部列出來,我敢肯定你會發現你的問題:

  • 確保您已經添加的字體在您的項目,你可以在XCode中看到它們。您可以將它們放入根文件夾或特定文件夾中。

  • 確保他們已經正確的目標,或者說他們實際上有一個目標在所有的;)在方框裏打勾,你是好

看這個圖像點1 & 2。 fonts are in the right folder and have correct target

  • 確保您的圖像包括作爲當前捆綁的資源:

enter image description here

  • 確保您引用它們在你的.plist文件,如果他們是在一個文件夾cusotm,我敢肯定,你需要寫下來的相對路徑,不僅名字。

enter image description here

  • 確保您使用正確的字體名稱,你可以找到使用下面的代碼片段:

的Objective-C:

for (NSString* family in [UIFont familyNames]) 
{ 
    NSLog(@"%@", family); 

    for (NSString* name in [UIFont fontNamesForFamilyName: family]) 
    { 
     NSLog(@" %@", name); 
    } 
} 

Swift:

for family: String in UIFont.familyNames() 
{ 
    print("\(family)") 
    for names: String in UIFont.fontNamesForFamilyName(family) 
    { 
     print("== \(names)") 
    } 
} 

完成後請不要忘記刪除該代碼。這將幫助您確保您確實使用了正確的字體名稱,這有時會與使用OSX的字體瀏覽器看到的實際名稱有所不同。

注意:如果您的字體不打印,這意味着他們不在項目中,如果他們打印,這意味着您沒有成功加載它們,但他們在項目中。這個特定的步驟可以幫助您查明問題。

enter image description here

  • 實際使用的字體:

    UIFont myFont = [UIFont fontWithName:@"QuicksandDash-Regular" size:35]; 
    

感謝Chris的實際技巧

我100%確定的正確答案是在某處在這裏,所以要確保你的一切都是正確的。除非您對使用字體做了特定的處理,否則重複這些步驟應該足夠了。 您可以嘗試使用空白項目並比較結果,這在遇到「無法解決的問題」時經常會有所幫助

+0

SF無法檢查使用下載鏈接 – iphonemaclover

1

步驟1中的.ttf及其工作: 確保在項目中添加的字體。

第2步: 確保在info.plist添加字體

第3步: 確保在Copy Bundle Resources添加字體 enter image description here

1

步驟1:確保您添加字體文件在項目中。

第2步:在AppDelegate中運行以下代碼並檢查您獲得的字體名稱。

for (NSString *familyName in [UIFont familyNames]){ 
    NSLog(@"Family name: %@", familyName); 
    for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) { 
     NSLog(@"--Font name: %@", fontName); 
    } 
} 

可能是字體名稱是不同的,那麼你正在使用。

+0

是它顯示在其中,我的字體類型是.otf – iphonemaclover

+1

@iphonemaclover:嘗試使用ttf文件,然後... –