Scrollview 只显示我在 swift 3 中使用情节提要创建的视图中的最后一个数组元素?

Posted

技术标签:

【中文标题】Scrollview 只显示我在 swift 3 中使用情节提要创建的视图中的最后一个数组元素?【英文标题】:Scrollview just show my last array's element in view which i create with storyboard in swift 3? 【发布时间】:2017-05-18 14:55:38 【问题描述】:

我想在滚动视图中添加一些视图。但我不想以编程方式查看此视图​​。我想用故事板创作。此视图包含图像。我添加了滚动视图并添加到视图。但是在滚动视图中,我只显示了我的最后一个视图。我想要 2 个视图和 2 个图像,就像我的视图一样。 我该如何解决这个问题?

这是我的代码:

import UIKit

class ViewController: UIViewController 

@IBOutlet weak var mainScrollView: UIScrollView!
var imageArray = [UIImage]()
@IBOutlet weak var myView: UIView!

@IBOutlet weak var imgv: UIImageView!
override func viewDidLoad() 
    super.viewDidLoad()

    imageArray = ["image","image2"]

    for i in 0..<imageArray.count
        mainScrollView.contentSize.width = mainScrollView.frame.width * CGFloat(i + 1)
        myView.layer.frame.size.width = myView.frame.width * CGFloat(i + 1)

        imgv.image = imageArray[i]
        mainScrollView.addSubview(myView)
    


override func didReceiveMemoryWarning() 
    super.didReceiveMemoryWarning()


这是故事板和控制器的外观like

【问题讨论】:

您是否考虑过为此布局使用集合视图? 【参考方案1】:

您遇到了我所看到的限制问题,这就是为什么您可能看不到您放在情节提要上的每个元素的原因。您需要更正这些错误,才能在滚动视图中正确显示所有内容。请记住,您需要告诉滚动视图它在情节提要中的高度和宽度。它们需要以某种方式定义。这是使用滚动视图时的常见错误。

您可以在滚动视图中放置一个视图并定义其高度和宽度属性。您可以将其宽度设置为等于屏幕的宽度,并且可以为您的高度设置一个常数。

【讨论】:

当我修复这些时它也不起作用。滚动视图也不滚动。 你能给我更多关于你想要做什么的背景信息吗?我不太确定。您确实需要确保情节提要中没有红色约束。这通常会在运行时引起问题。

以上是关于Scrollview 只显示我在 swift 3 中使用情节提要创建的视图中的最后一个数组元素?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift ui 底部使用 ScrollView 启动视图?

swift关于scrollview与tableview的问题

Swift 4 Scrollview 约束问题

iOS Swift:ScrollView 严格拖动

SWIFT - ScrollView 内的 WKWebView 中的 HTML 滚动事件

(Swift) ScrollView 中的 StackView 不起作用