Swift UIImageView高于所有其他视图

时间:2014-12-09 20:46:40

标签: ios swift xcode6 background-image

我在Swift中遇到问题,我在Main.storyboard中的视图上放了一个UIImageView。我想使用这个UIImageView作为背景图像,因此我想把它放在"组件堆栈的底部"。不幸的是,这个UIImageView似乎是所有东西的顶部,而不是显示我的UIPickerView和UIButtons。如果我调整UIImageView的大小,你可以通过查看我附上的图片看到我的意思。

有谁知道如何解决这个问题并在底部设置UIImageView,以及我上面的所有其他组件?

The purple image is the one I want to use as background image

答案: 谢谢大家,我通过将collectionview的backgroundview更改为backgroundview来修复它。这是代码:

    var imageViewObject :UIImageView!
    imageViewObject = UIImageView(frame: CGRectMake(0, 0, viewSize.width, viewSize.height))
    imageViewObject.image = UIImage(named:"intro.jpg")

collectionView = UICollectionView(frame: self.view.frame, collectionViewLayout: layout)
collectionView!.dataSource = self
collectionView!.delegate = self
collectionView!.registerClass(NameCell.self, forCellWithReuseIdentifier: "Cell")
collectionView!.backgroundView = imageViewObject
backgroundView.addSubview(collectionView!)

3 个答案:

答案 0 :(得分:6)

如果在故事板中:

  • 点击/选择要z-order
  • 的图像
  • 然后从菜单栏
  • 选择编辑 - >安排
  • 然后选择"发送回"或者"发送到前面"
  • 您可以选择向前发送"或者"向后发送"在层之间定位

答案 1 :(得分:3)

  

有没有人知道如何解决这个问题并在底部设置UIImageView,以及我上面的所有其他组件?

三件事:

  1. 您可以通过编程方式设置视图的z顺序。请查看-sendSubviewToBack:-insertSubview:aboveSubview:

  2. 如果您需要在故事板中执行相同操作,只需使用情节提要编辑器中“编辑器”菜单的“编配”子菜单中的命令重新排序视图。

  3. 让视图包含其他视图通常会更好。考虑添加"前面"视图作为背景视图的子视图。这样你就可以移动整个屏幕"通过移动背景视图,子视图将随之显示。

答案 2 :(得分:1)

您的问题激发了我撰写此博客文章,以展示如何使用Storyboard和内部代码执行此操作,希望这对您有用。 UIView Hierarchy