强制UIImageView保留在活动动画前面

时间:2016-10-28 02:16:56

标签: swift xcode animation uiimageview layer

语言:Swift,IDE:用于iOS开发的Xcode,单视图应用程序>查看控制器...

我有两个相同图像的UIImage视图,我在视图中从左到右滚动动画,以创建一个慢慢移动的背景'各种各样的。我想在这个重复的背景动画的前景中放置其他UI元素(标签,其他图像等),但是当我运行模拟器时发现前景图像没有被看到......

问题:是否可以强制其他UI元素以编程方式停留在重复动画前面?

我不在我的Mac上,所以我暂时无法分享我的代码,但如果你知道这个问题的直接答案和/或哪种方法可以最好地实现这一目标,我就是'我所有的耳朵!

提前致谢! :)

2 个答案:

答案 0 :(得分:1)

这取决于视图的z排序。假设您要添加所有视图,然后在开始设置动画之前在视图上启动动画调用bringSubViewToFront。如果要在界面构建器中进行布局,则Z顺序基于top = farthest和bottom = nearest。如果要以编程方式添加视图,则始终会在前面添加最新视图。您可以使用insertSubview:at:和相关方法更改此设置。请查看UIView的文档。

答案 1 :(得分:0)

如果你想使用z-index:

     YourImageViewName.layer.zPosition = 1

您也可以在父视图上使用bringToFront方法:

       self.view.bringSubviewToFront(YourImageViewName)

希望这可以解决您的问题。