swift – 如何更改UIView的z索引或堆栈顺序?

我已经在现有控制器的顶部堆叠了一个UIView,以创建一个梯度层。但是,当我加载视图时,新的UIView(自然)在所有的东西之上。

相关代码

class ViewController: UIViewController {

    @IBOutlet weak var myGradientView: GradientView!

    override func viewDidLoad() {
        super.viewDidLoad()            
    }

    override func viewDidLayoutSubviews() {
        self.myGradientView.gradientWithColors(UIColor.whiteColor(),UIColor.blueColor())
    }
}

我做了一些搜索,我发现an answer in Objective-C说明使用:

[parentView bringSubviewToFront:view];

我不知道目标c,对于斯威夫特来说,这是相当新鲜的,如果有人可以在这里发光,我将不胜感激。

我的问题:

如何在Swift中更改UIView的z索引或堆栈顺序?

我会推荐在UIView documentation中查看,列出几种方法来操纵子视图的顺序:

06000

在你的情况下,你可以试试:

self.view.sendSubviewToBack(myGradientView)
// self is your view controller in this case.

或者,因为您在IB中创建了myGradientView,您可以更改视图层次结构,以更改顶部显示的视图。这是一张图说明:

希望有帮助。

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...