如何在Swift的导航栏顶部显示自定义视图?

时间:2018-11-06 02:34:41

标签: ios swift uinavigationitem

所以我对导航栏(导航项)的理解方式是,它具有三个可以修改的位置,分别是左(leftBarButtomItem),中(titleView)和右({{1 }}。

现在我要实现的是,我只想在导航栏的最底部添加一条简单的进度栏行,但仍在导航栏中。我想使它像导航栏的扩展,可以在其他屏幕上重复使用。但是我希望左,中和右“视图”仍然像往常一样工作。例如我不希望如果我在其他视图控制器中手动更改标题视图的内容,则该行消失/停止为该其他视图控制器工作。因此,这感觉就像是在导航栏顶部作为子视图添加了一个独立的叠加层,与rightBarButtonItemleftBarButtonItemtitleView分开,可以说出来。

是否可以在导航项中做到这一点?

1 个答案:

答案 0 :(得分:0)

这是一个如何添加图像而不是标题字符串的示例

fileprivate func setupTitle(){

    let logo = UIImage(named: "my_incredible_logo")
    let imageView = UIImageView(image:logo)
    imageView.contentMode = .scaleAspectFit

    self.navigationItem.titleView = imageView
    self.navigationController?.navigationBar.prefersLargeTitles = false
}