热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何设置透明的导航栏?iOS11Swift4Xcode9

如何解决《如何设置透明的导航栏?iOS11Swift4Xcode9》经验,为你挑选了1个好方法。

右边的图片是我需要的,而左边的则是我得到的:

1个

我正在尝试制作一个透明的导航栏,在我读的这本书中,您所要做的就是将这段代码插入首选的View Controller的viewDidLoad()方法中:

navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
navigationController?.navigationBar.shadowImage = UIImage()
navigationController?.navigationBar.tintColor = .white

tableView.cOntentInsetAdjustmentBehavior= .never

但是我得到的只是一个白色的导航栏。另外,如果写出图片上条形的差异在此代码中:

tableView.cOntentInsetAdjustmentBehavior= .never

但这对我不起作用

我下载了本书这一章的最后一个项目,并且在那儿一切正常,尽管我试图复制粘贴代码,但仍然没有任何改变。

问题是-我已经尝试插入以下代码:

navigationController?.navigationBar.isTranslucent = true

但这不起作用

如果重要的话,这本书是AppCoda撰写的“ iOS 11编程入门”。



1> Abhishek Mit..:

使用以下代码:

navigationController?.navigationBar.isTranslucent = true

希望对您有帮助。

编辑(更新)

使用以下代码:

navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
navigationController?.navigationBar.shadowImage = UIImage()
navigationController?.navigationBar.isTranslucent = false

更新2

override func viewDidAppear(_ animated: Bool) {

        navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
        navigationController?.navigationBar.shadowImage = UIImage()
        navigationController?.navigationBar.isTranslucent = true
        navigationController?.navigationBar.tintColor = .red
    }

必须要工作。


@ДмитрийМеньшиков确保要添加的最上面的视图,不应将顶部约束设置为要查看的安全区域。然后上面的代码工作正常。
推荐阅读
author-avatar
邪冫主_70139
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有