2016-03-22 21 views
0

不工作,我需要將特定格式的導航標題設置文本attribue iOS中

我寫這篇文章的代碼

// color 
    UIColor *titlecolor = [self getUIColorObjectFromHexString:@"#5C8EB3" alpha:1.0]; 
    [self.navigationController.navigationBar setTitleTextAttributes: 
    @{NSForegroundColorAttributeName:titlecolor}]; 

    // font face 
    UIFont *font=[UIFont fontWithName:@"NotoKufiArabic-Regular" size:16.0f]; 
    [self.navigationController.navigationBar setTitleTextAttributes: 
    @{NSFontAttributeName:font}]; 

是沒有問題的顏色,問題是與字體 任何人都可以請告訴我什麼是問題?

回答

2

你不說你在看什麼,只是設置字體不起作用。我會猜測字體是問題(可能不是)。但要猜的話,請嘗試以下,看看我們是否能縮小問題了一點:

  1. 在你的plist你列入又名字體由應用程序提供UIAppFonts的字體?

  2. 此外,您是否確定爲自定義字體選擇了正確的目標?

  3. 運行以下命令:

    NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]]; NSLog(@"Fonts: %@", [UIFont familyNames]);

是您的字體上市?

  1. 檢查Mac上的Font Book應用程序,搜索字體並找到其正確的名稱(稱爲PostScript名稱)。使用這個名字就是指這個字體。

  2. 包資源中是否包含字體? (在Build Phase - > Copy Bundle Resources下。)

  3. 當您將字體添加到項目中時,是否選擇了「如果需要複製項目」?

  4. 你在啓動屏幕故事板中執行此操作嗎?他們不能使用自定義字體。

+0

我收到以下異常:當我添加的字體的一部分,當我刪除字體部分它的工作原理 終止應用程序由於未捕獲的異常「NSInvalidArgumentException」,原因:「*** - [__ NSPlaceholderDictionary initWithObjects :forKeys:count:]:嘗試從對象[0]' –

+1

插入nil對象後,使用列表字體的代碼,我發現字體名稱包含空間在字體列表中,當我使用它,因爲它是工作,謝謝 –

+0

另外,如果您有多個目標,請確保您將字體添加到所有目標 –