我遇到了贾里德戴维森的YouTube视频问题。 https://www.youtube.com/watch?v=1_daE3IL_1s在7分钟时,他编写了代码行:
self.ScrollView1.contentSize = CGSizeMake(self.view.frame.width * 2, self.view.frame.size.height)
我的错误显示CGSizeMake在Swift中不可用,但在视频中它完美运行。这是我的代码版本:
import UIKit
class VC1: UIViewController {
@IBOutlet weak var ScrollView1: UIScrollView!
override func viewDidLoad() {
super.viewDidLoad()
var V1 : View1 = View1(nibName: "View1", bundle: nil)
var V2 : View2 = View2(nibName: "View2", bundle: nil)
var V2Frame : CGRect = V2.view.frame
self.addChildViewController(V1)
self.ScrollView1.addSubview(V1.view)
V1.didMove(toParentViewController: self)
self.addChildViewController(V2)
self.ScrollView1.addSubview(V2.view)
V2.didMove(toParentViewController: self)
V2Frame.origin.x = self.view.frame.width
V2.view.frame = V2Frame
self.ScrollView1.contentSize = CGSizeMake(self.view.frame.width * 2, self.view.frame.size.height)
}
}
答案 0 :(得分:3)
在Swift 3中正确使用CGSize:
let size = CGSize(width: x, height: y)
在你的情况下:
self.ScrollView1.contentSize = CGSize(width: self.view.frame.width * 2, height: self.view.frame.size.height)
不推荐使用CGSizeMake。
(P.S。使用驼峰案例命名变量是个好习惯(例如“scrollView1”而不是“ScrollView1”))