2017-10-05 164 views
9

iOS 11中导航栏的新大标题显示多行是否可能? App Store应用程序执行此操作,但在当前文档中找不到任何内容来执行此操作。如果标准行为太长,则只显示一行带省略号的行。iOS 11导航栏中大标题的多行显示11

enter image description here

+0

你收到这方面的任何解决方案? –

回答

2

添加以下代码viewWillAppear中:

navigationController?.navigationBar.prefersLargeTitles = true 
    self.navigationController?.navigationItem.largeTitleDisplayMode = .automatic 

    self.title = "Hello big text, For navigation large style bar" 
    navigationController?.navigationBar.largeTitleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.black, NSAttributedStringKey.font : UIFont.preferredFont(forTextStyle: .largeTitle)] 

    var count = 0 
    for item in(self.navigationController?.navigationBar.subviews)! { 
     for sub in item.subviews{ 
      if sub is UILabel{ 
       if count == 1 { 
        break; 
       } 
       let titleLab :UILabel = sub as! UILabel 
       titleLab.numberOfLines = 0 
       titleLab.text = self.title 
       titleLab.lineBreakMode = .byWordWrapping 
       count = count + 1 
      } 
     } 

    } 
    self.navigationController?.navigationBar.layoutSubviews() 
    self.navigationController?.navigationBar.layoutIfNeeded() 

面对与后退按钮将很快更新问题..