iOS:调整UINavgationBar标题的位置

Tom*_*eit 3 uinavigationbar uinavigationcontroller ios

我更改了UINavigationBar标题的字体和大小,但这样做使标题不再正确对齐,所以我认为这"setTitlePositionAdjustment:"应该有效,但它没有(无法识别的选择器).如何调整标题的位置?

[[UINavigationBar appearance] setTitleTextAttributes:
 [NSDictionary dictionaryWithObjectsAndKeys:
  [NSValue valueWithUIOffset:UIOffsetMake(0, -1)],
  UITextAttributeTextShadowOffset,
  [UIFont fontWithName:@"Cochin-Bold" size:24.0],
  UITextAttributeFont,
  nil]];

[[UINavigationBar appearance] setTitlePositionAdjustment:UIOffsetMake(0, 10)]; // Crash
Run Code Online (Sandbox Code Playgroud)

Val*_*hie 6

您需要调用方法setTitleVerticalPositionAdjustment:forBarMetrics:而不是.

例如:

[[UINavigationBar appearance] setTitleVerticalPositionAdjustment:10.0 forBarMetrics:UIBarMetricsDefault];
Run Code Online (Sandbox Code Playgroud)

有关该方法的更多详细信息,请查看UINavigationBar类参考.