如何在navigationBar中创建带有preferredLargeTitles的左对齐标题?

问题描述

我在导航栏上使用prefersLargeTitles,当它折叠时,我想将标题对准导航栏的左侧,

要做的是创建一个带有标签自定义视图的leftBarButtonItem并将标题颜色设置为.clear,问题是即使大标题没有折叠也可以看到标签

这是我用于添加导航项作为标题代码

let label = UILabel()
label.textColor = UIColor.black
label.text = "my left title"
self.navigationItem.leftBarButtonItem = UIBarButtonItem.init(customView: label)

或该帖子的另一个问题是,如果大标题尚未折叠,如何隐藏leftBarButtonItem

解决方法

以下链接可以帮助您找到所需的出路:Change title according to navigation bar

要添加的一些基本内容是,您可以将导航栏标题设置为空字符串或其他所需的内容,并且如果折叠该折叠栏使其不可见,则可以使自定义视图可见。您可以在链接中查看如何观察导航栏是否折叠。

更重要的一点是,如果您要切换到另一个屏幕,则应删除观察者,否则可能导致内存泄漏。