我在Swift中遇到问题,我在Main.storyboard中的视图上放了一个UIImageView。我想使用这个UIImageView作为背景图像,因此我想把它放在"组件堆栈的底部"。不幸的是,这个UIImageView似乎是所有东西的顶部,而不是显示我的UIPickerView和UIButtons。如果我调整UIImageView的大小,你可以通过查看我附上的图片看到我的意思。
有谁知道如何解决这个问题并在底部设置UIImageView,以及我上面的所有其他组件?
答案: 谢谢大家,我通过将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!)
答案 0 :(得分:6)
如果在故事板中:
答案 1 :(得分:3)
有没有人知道如何解决这个问题并在底部设置UIImageView,以及我上面的所有其他组件?
三件事:
您可以通过编程方式设置视图的z顺序。请查看-sendSubviewToBack:
,-insertSubview:aboveSubview:
等
如果您需要在故事板中执行相同操作,只需使用情节提要编辑器中“编辑器”菜单的“编配”子菜单中的命令重新排序视图。
让视图包含其他视图通常会更好。考虑添加"前面"视图作为背景视图的子视图。这样你就可以移动整个屏幕"通过移动背景视图,子视图将随之显示。
答案 2 :(得分:1)
您的问题激发了我撰写此博客文章,以展示如何使用Storyboard和内部代码执行此操作,希望这对您有用。 UIView Hierarchy