如何在iOS 11的导航栏上设置大标题?

我正在为iOS 11或更高版本创build应用程序,要求在导航栏的左侧设置大标题。

请有人帮忙解决如何设置,它应该只适用于iOS 11或更高版本。

给我一些其他的build议,通过应用程序(支持iOS 8或更高版本)来维护此function。

提前致谢。

这里是代码片段,在iOS 11或更高版本的导航栏左侧显示大标题。

目标C:

self.title = @"Your title"; if (@available(iOS 11, *)) { self.navigationController.navigationBar.prefersLargeTitles = true; self.navigationController.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAlways; } 

迅速:

  self.title = "Your title" if #available(iOS 11, *) { self.navigationController?.navigationBar.prefersLargeTitles = true self.navigationController?.navigationItem.largeTitleDisplayMode = .always } 

在构build应用程序之前,您需要将iOS 11的检查条件。

要求testing大标题:

  • Xcode 9.0,
  • Mac OSX – 10.12.6或更高版本,
  • iPhone / iPad或Xcode 9模拟器与iOS 11。
 if (@available(iOS 11.0, *)) { [[UINavigationBar appearance] setPrefersLargeTitles:false]; } 

你可以将UILabel设置为titleView

 UILabel *lblTitle = [[UILabel alloc] init]; lblTitle.text = YOUR_TITLE_TEXT; lblTitle.backgroundColor = [UIColor clearColor]; lblTitle.textColor = [UIColor whiteColor]; lblTitle.font = FONT_NAV_BAR; [lblTitle sizeToFit]; self.navigationItem.titleView = lblTitle;