NIB 文件中的滚动视图 Swift

ScrollView in NIB File Swift

我正在尝试创建一个 nib 文件,其中视图出口是具有全屏 UIScrollView 的 uiview。如果有意义的话,我想将实际视图添加到滚动视图中(我将附上屏幕截图)。我尝试了几种不同的方法,大多数都在 Objective-C 中,但无法使这种方法起作用。当我 运行 下面的代码时,我在控制台中得到 (lldb),没有其他错误文本。

class ScrollViewVC: UIViewController {

@IBOutlet weak var mainScrollView: UIScrollView!
@IBOutlet var contentView: UIView!
@IBOutlet weak var contentViewTitle: UILabel!
@IBOutlet weak var contentViewPrice: UILabel!
@IBOutlet weak var contentViewImageContainer: UIScrollView!

@IBOutlet var imageContainer: UIView!
@IBOutlet weak var imageOne: UIImageView!
@IBOutlet weak var imageTwo: UIImageView!
@IBOutlet weak var imageThree: UIImageView!

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
    super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
convenience init() {
    self.init(nibName: "ScrollViewVC", bundle: nil)
}
required init(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}
override func viewDidLoad() {
    super.viewDidLoad()

    self.mainScrollView.addSubview(contentView)
    self.mainScrollView.contentSize = self.contentView.frame.size
    self.contentViewImageContainer.addSubview(self.imageContainer)
    self.contentViewImageContainer.contentSize = self.imageContainer.frame.size
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

}

self.mainScrollView.addSubview(contentView)

此行会使您的应用崩溃。检查您的 contentView 插座点在哪里。它指向在您的 IB 中具有名称 "Main Scroll View" 的视图。在里面,如果你有一个滚动视图,你有一个 mainScrollView 出口连接。

因此,您正在尝试向滚动视图添加包含此滚动视图的视图。难怪您的应用会崩溃。

请务必小心分配的插座。