【问题标题】:Multiple lines for large titles in navigation bars in iOS 11iOS 11 导航栏中大标题的多行
【发布时间】:2017-10-05 05:43:05
【问题描述】:

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

【问题讨论】:

标签: ios uinavigationbar ios11


【解决方案1】:

在 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()

返回按钮面临的问题将很快更新..

【讨论】:

  • 返回按钮问题有什么更新吗?我只能让它在 viewdidappear 中工作,它只适用于视图可见并因此看起来块状。
  • 也许您可以在分配计数的地方使用 break。
  • 这不起作用,标签变为多行但导航栏没有增加其高度@Rahul_Chandnani
  • 同意@ShahzaibQureshi
【解决方案2】:

有一种方法可以简单地通过使用非公共 API 来做到这一点。使用风险自负:

class ViewController: UIViewController {

   override func viewDidLoad() {
      super.viewDidLoad()
      title = "Thunderbox Entertaiment"
      navigationItem.enableMultilineTitle()
   }

}
extension UINavigationItem {
   
   func enableMultilineTitle() {
      setValue(true, forKey: "__largeTitleTwoLineMode")
   }
   
}

结果:

【讨论】:

    猜你喜欢
    • 2018-04-14
    • 2018-03-04
    • 1970-01-01
    • 2018-06-02
    • 2018-04-29
    • 2018-05-18
    • 1970-01-01
    • 1970-01-01
    • 2020-03-14
    相关资源
    最近更新 更多