我有一个有趣的问题,我不确定是否可以用标准方式解决:
我有一个 UIViewController,其 UIImageView 位于顶部,与容器的顶部空间齐平。标准的东西。
但是,我想要尝试做的是看看是否有办法获取它,以便图像也在导航栏后面运行(因此导航栏覆盖在背景图像的顶部)。
我的想法是这是不可能的,因为图像不能跨越两个 View Controller 。我当然可以将它放在一个 View Controller 上,甚至让导航栏有一个背景图像,但我不能让它同时包含相同的图像,对吗?
我认为实现这样的目标的唯一方法是隐藏我的导航栏,并制作我自己的“作弊”导航栏,该导航栏实际上驻留在 View Controller 中来模拟它。
任何想法或者这是否违反了基本原则。
编辑:尝试这两种建议后,最终会执行以下操作(在两种情况下): /image/WtGSN.jpg
所以它几乎就像将顶部栏设置为一张图像,将底部表格 View 设置为缩小的图像
有什么想法吗?
最佳答案
使导航栏透明以显示背景图像。将以下代码添加到您的导航栏扩展中。
func transparentNavigationBar() {
self.navigationController!.navigationBar.setBackgroundImage(UIImage(),for: UIBarMetrics.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
self.navigationController!.view.backgroundColor = UIColor.clear
self.navigationController?.navigationBar.backgroundColor = UIColor.clear
}
关于ios - UIViewController 背景图像跨越导航栏后面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53201887/