swift 3, iOS - 背景的 UIImageView
swift 3, iOS - UIImageView for background
我目前在 UIView 中有几个标签和按钮。我正在使用故事板,我想在背景中添加图像。我这样试过:
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor(patternImage: UIImage(named:"background.png")!)
但不幸的是,这在较大的屏幕尺寸下看起来不正确。我认为我需要添加一个 UIImageView。当我添加一个 UIImageView 时,我不知道如何将它设置在后台以便我的按钮和标签仍然可见。
在你的故事板中:
1- 添加一个 UIImageView
(在您的主视图内和其他所有视图之外)并将其图像设置为您想要的图像。
2- 正确设置其约束以填充屏幕(从所有方向给它 0)。
3- 在属性检查器中,将内容模式 属性 设置为适合纵横比。
let someImageView: UIImageView = {
let theImageView = UIImageView()
theImageView.image = UIImage(named: "yourImage.png")
return theImageView
}()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(someImageView) //This add it the view controller without constraints
}
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
someImageView.frame = view.bounds
}
我通过转到故事板中的面板并将 UIImageView 移动到包含标签和按钮的容器视图上方来解决了这个问题。 UIImageView 保留在 View 内,但移到了背景中(在按钮和标签下)。
我目前在 UIView 中有几个标签和按钮。我正在使用故事板,我想在背景中添加图像。我这样试过:
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor(patternImage: UIImage(named:"background.png")!)
但不幸的是,这在较大的屏幕尺寸下看起来不正确。我认为我需要添加一个 UIImageView。当我添加一个 UIImageView 时,我不知道如何将它设置在后台以便我的按钮和标签仍然可见。
在你的故事板中:
1- 添加一个 UIImageView
(在您的主视图内和其他所有视图之外)并将其图像设置为您想要的图像。
2- 正确设置其约束以填充屏幕(从所有方向给它 0)。
3- 在属性检查器中,将内容模式 属性 设置为适合纵横比。
let someImageView: UIImageView = {
let theImageView = UIImageView()
theImageView.image = UIImage(named: "yourImage.png")
return theImageView
}()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(someImageView) //This add it the view controller without constraints
}
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
someImageView.frame = view.bounds
}
我通过转到故事板中的面板并将 UIImageView 移动到包含标签和按钮的容器视图上方来解决了这个问题。 UIImageView 保留在 View 内,但移到了背景中(在按钮和标签下)。