3

我带入 Xcode 的自定义 TrueType 字体文件未在 UINavigationBar 中正确显示。它不显示自定义字体,而是显示系统字体(Helvetica Bold)。

根视图控制器.m

self.title = @"Library";
    [[UINavigationBar appearance] setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:
      [UIColor whiteColor], UITextAttributeTextColor,
      [UIFont fontWithName:@"adellebasic_bold.ttf" size:20.0], UITextAttributeFont,nil]];

我还确保我将其正确复制到 Xcode 中,并UIAppFontsInfo.plist文件中声明了它。另请注意,如果我将代码设置为 iPhone SDK 中包含的 UIFont 但不是引入的自定义字体,则该代码有效。

有没有人知道我在这里做错了什么?

4

2 回答 2

3

试试这个:

    NSMutableDictionary *titleBarAttributes = [NSMutableDictionary dictionaryWithDictionary: [[UINavigationBar appearance] titleTextAttributes]];

    [titleBarAttributes setValue:[UIFont fontWithName:@"adellebasic_bold" size:25.0f] forKey:UITextAttributeFont];

    [self.navigationController.navigationBar setTitleTextAttributes:titleBarAttributes];

    [self.navigationController.navigationBar setTitleVerticalPositionAdjustment:4.0f forBarMetrics:UIBarMetricsDefault];

希望这可以帮助。

于 2013-02-23T17:41:39.397 回答
0

实际上字体文件名和字体名是两个不同的东西。检查这个:iOS:如何设置非系统字体系列、样式、UILabel 大小?.

试试这个名字“Adelle Basic Bold”。

于 2013-02-23T17:16:51.223 回答