使用Swift 3 Xcode 8进行CGSizeMake的特定问题

时间:2017-08-26 04:46:34

标签: swift swift3 cgsize

我遇到了贾里德戴维森的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)
    }
}

1 个答案:

答案 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”))