gpt4 book ai didi

ios - 使用视觉格式约束时, subview 未显示在 ScrollView 中

转载 作者:行者123 更新时间:2023-11-30 12:58:16 25 4
gpt4 key购买 nike

我不明白为什么蓝色 View 没有显示,请看看我的代码。当我使用 view.addSubView(mapView) 时,它会显示在主视图中,但是当我执行 scrollView.addSubView(mapView) 时,它不会显示。一切似乎都是正确的约束。我不确定为什么它不起作用。

import UIKit



class practiceViewController: UIViewController,UIScrollViewDelegate {
override func viewDidLoad() {
var allConstraint = [NSLayoutConstraint]()

let scrollView:UIScrollView = {
let v = UIScrollView()
v.backgroundColor = .red
v.translatesAutoresizingMaskIntoConstraints = false
return v
}()

let mapView:UIView = {
let v = UIView()
v.backgroundColor = .blue
v.translatesAutoresizingMaskIntoConstraints = false
return v
}()

//views
let views = [
"scrollView":scrollView,
"mapView":mapView
]
//add views
view.addSubview(scrollView)
scrollView.addSubview(mapView)

// constraints
let scrollviewHorizontalConstraint = NSLayoutConstraint.constraints(withVisualFormat: "H:|[scrollView]|", options: [], metrics: nil, views: views)
let scrollviewVerticleConstraint = NSLayoutConstraint.constraints(withVisualFormat: "V:|[scrollView]|", options: [], metrics: nil, views: views)

allConstraint += scrollviewVerticleConstraint
allConstraint += scrollviewHorizontalConstraint

let mapViewHorizontalConstraint = NSLayoutConstraint.constraints(withVisualFormat: "H:|[mapView]|", options: [], metrics: nil, views: views)
let mapViewVerticleConstraint = NSLayoutConstraint.constraints(withVisualFormat: "V:|[mapView]|", options: [], metrics: nil, views: views)

allConstraint += mapViewHorizontalConstraint
allConstraint += mapViewVerticleConstraint

NSLayoutConstraint.activate(allConstraint)
}

}

最佳答案

您的 map View 需要宽度和高度。 ScrollView 不知道内容大小是多少,直到您设置内容的大小,因此 ScrollView 默认为零。尝试这样的事情:

let mapViewHorizontalConstraint = NSLayoutConstraint.constraints(withVisualFormat: "H:|[mapView(200)]|", options: [], metrics: nil, views: views)
let mapViewVerticleConstraint = NSLayoutConstraint.constraints(withVisualFormat: "V:|[mapView(200)]|", options: [], metrics: nil, views: views)

关于ios - 使用视觉格式约束时, subview 未显示在 ScrollView 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40161906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com