gpt4 book ai didi

swift - 卡在塞满了 UIStackView 的非滚动 UIScrollView

转载 作者:行者123 更新时间:2023-11-28 14:28:31 25 4
gpt4 key购买 nike

我的 VC 是一个垂直的 2 部分 View Controller ,其中底部是一个 UIScrollView,我在其中添加了一个垂直的 UIStackView,因为它应该垂直滚动。

所有的构建步骤都以编程方式完成,如下所示:

    // Add upper part
view.addSubview(upperView)
upperView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
upperView.topAnchor .constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
upperView.leadingAnchor .constraint(equalTo: view.leadingAnchor),
upperView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
upperView.heightAnchor .constraint(equalTo: view.heightAnchor, multiplier: 0.3)
])


// Add down part

view.addSubview(scrollView)
scrollView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
scrollView.topAnchor .constraint(equalTo: upperView.bottomAnchor, constant: 40),
scrollView.leadingAnchor .constraint(equalTo: view.leadingAnchor, constant: 20),
scrollView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20),
scrollView.bottomAnchor .constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor),
])

// Vertical stackview: basically a vertical collection of strips
scrollView.addSubview(stackView)
stackView.spacing = 5
stackView.distribution = .fill
stackView.alignment = .leading
stackView.axis = .vertical

stackView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
stackView.topAnchor .constraint(equalTo: scrollView.topAnchor),
stackView.leftAnchor .constraint(equalTo: scrollView.leftAnchor),
stackView.widthAnchor .constraint(equalTo: scrollView.widthAnchor),
stackView.bottomAnchor.constraint(equalTo: stackView.bottomAnchor)
])

如果我破坏 Xcode 并打开 View 层次结构调试器,我会看到它提示内容大小:UIScrollView 的可滚动内容大小不明确。

当我限制顶部和底部堆栈 View 固定在 ScrollView 时,它是怎么来的?

最佳答案

你可能需要改变这个

stackView.bottomAnchor.constraint(equalTo: stackView.bottomAnchor)

stackView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor)

关于swift - 卡在塞满了 UIStackView 的非滚动 UIScrollView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51401641/

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