Swift Can';我不明白为什么我的堆栈视图没有垂直排列

Swift Can';我不明白为什么我的堆栈视图没有垂直排列,swift,xcode,model-view-controller,uikit,Swift,Xcode,Model View Controller,Uikit,我已经做过很多次了,但这次由于某种原因,它不会像往常那样工作。我做错什么了吗?我只是想把两个视图放到我的视图中,并垂直分布它们。它似乎不断重叠,到处都是。有一次,它甚至只展示了一种观点 我的viewdidload(): 我的视图和标签: fileprivate lazy var headerView : UIView = { var view = UIView() view.translatesAutoresizingMaskIntoConstraints =

我已经做过很多次了,但这次由于某种原因,它不会像往常那样工作。我做错什么了吗?我只是想把两个视图放到我的视图中,并垂直分布它们。它似乎不断重叠,到处都是。有一次,它甚至只展示了一种观点

我的viewdidload():

我的视图和标签:

fileprivate lazy var headerView : UIView = {

        var view = UIView()
        view.translatesAutoresizingMaskIntoConstraints = false
        view.backgroundColor = .black
        return view

        }()
    fileprivate lazy var contentView : UIView = {

        var view = UIView()
        view.backgroundColor = .lightGray
        view.translatesAutoresizingMaskIntoConstraints = false

        return view

    }()

    fileprivate lazy var contentStack : UIStackView = {



        var stack = UIStackView(arrangedSubviews: [EarningsView,ListingsView,])

        stack.translatesAutoresizingMaskIntoConstraints = true
        stack.distribution = .fillEqually
        stack.alignment = .fill
        stack.axis = .vertical
//        stack.spacing = 5

        return stack

    }()
    fileprivate lazy var EarningsView : UIView = {

        let EarningsView = UIView()
        EarningsView.translatesAutoresizingMaskIntoConstraints = false
        EarningsView.backgroundColor = .blue

         EarningsView.addSubview(EarningsLabel)
         EarningsView.addViewBorder(borderColor: UIColor.black.cgColor, borderWith: 0.5, borderCornerRadius: 0.0)

        return EarningsView

    }()
    fileprivate lazy var EarningsLabel : UILabel = {
        let EarningsLabel = UILabel()
        EarningsLabel.translatesAutoresizingMaskIntoConstraints = false
        let earningsText = NSAttributedString(string: "My Earnings", attributes: self.stringAttrib)
        EarningsLabel.attributedText = earningsText
        EarningsLabel.textColor = .black
        EarningsLabel.backgroundColor = .white
        EarningsLabel.textAlignment = .center


        return EarningsLabel

    }()

    fileprivate lazy var ListingsView : UIView = {

        let ListingsView = UIView()

        ListingsView.translatesAutoresizingMaskIntoConstraints = false

        ListingsView.addSubview(ListingLabel)
        ListingsView.addViewBorder(borderColor: UIColor.black.cgColor, borderWith: 0.5, borderCornerRadius: 0.0)
        ListingsView.backgroundColor = .red
        return ListingsView
    }()
    fileprivate lazy var ListingLabel : UILabel = {
        let ListingLabel = UILabel()
        ListingLabel.translatesAutoresizingMaskIntoConstraints = false

        let listingText = NSAttributedString(string: "My Listing", attributes: self.stringAttrib)
        ListingLabel.attributedText = listingText


        return ListingLabel
    }()

这让我发疯,因为我以前做过很多次,现在我花了至少6个小时在这一小部分上试图弄明白。当然,我可以创建一个全新的viewcontroller,但我只想解决这个问题。

EarningView、EarningLabel、ListingView、ListingLabel

translatesAutoresizingMaskIntoConstraints=false


但是它们没有添加任何约束来替换自动调整大小的约束,所以它们只是装傻,然后转到左上角。我以前见过这样的东西。我的东西。要么自动调整大小,要么放入约束。

Hm当我取出约束时,这些视图不再显示。。。我的堆栈视图是translatesAutoresizingMaskIntoConstraints=true,它就是这样运行的。。。。。
fileprivate lazy var headerView : UIView = {

        var view = UIView()
        view.translatesAutoresizingMaskIntoConstraints = false
        view.backgroundColor = .black
        return view

        }()
    fileprivate lazy var contentView : UIView = {

        var view = UIView()
        view.backgroundColor = .lightGray
        view.translatesAutoresizingMaskIntoConstraints = false

        return view

    }()

    fileprivate lazy var contentStack : UIStackView = {



        var stack = UIStackView(arrangedSubviews: [EarningsView,ListingsView,])

        stack.translatesAutoresizingMaskIntoConstraints = true
        stack.distribution = .fillEqually
        stack.alignment = .fill
        stack.axis = .vertical
//        stack.spacing = 5

        return stack

    }()
    fileprivate lazy var EarningsView : UIView = {

        let EarningsView = UIView()
        EarningsView.translatesAutoresizingMaskIntoConstraints = false
        EarningsView.backgroundColor = .blue

         EarningsView.addSubview(EarningsLabel)
         EarningsView.addViewBorder(borderColor: UIColor.black.cgColor, borderWith: 0.5, borderCornerRadius: 0.0)

        return EarningsView

    }()
    fileprivate lazy var EarningsLabel : UILabel = {
        let EarningsLabel = UILabel()
        EarningsLabel.translatesAutoresizingMaskIntoConstraints = false
        let earningsText = NSAttributedString(string: "My Earnings", attributes: self.stringAttrib)
        EarningsLabel.attributedText = earningsText
        EarningsLabel.textColor = .black
        EarningsLabel.backgroundColor = .white
        EarningsLabel.textAlignment = .center


        return EarningsLabel

    }()

    fileprivate lazy var ListingsView : UIView = {

        let ListingsView = UIView()

        ListingsView.translatesAutoresizingMaskIntoConstraints = false

        ListingsView.addSubview(ListingLabel)
        ListingsView.addViewBorder(borderColor: UIColor.black.cgColor, borderWith: 0.5, borderCornerRadius: 0.0)
        ListingsView.backgroundColor = .red
        return ListingsView
    }()
    fileprivate lazy var ListingLabel : UILabel = {
        let ListingLabel = UILabel()
        ListingLabel.translatesAutoresizingMaskIntoConstraints = false

        let listingText = NSAttributedString(string: "My Listing", attributes: self.stringAttrib)
        ListingLabel.attributedText = listingText


        return ListingLabel
    }()