将代码转换为最新的 swift 3.0 后,我收到此错误。
还告诉我 CGSize = CGSizeMake(0,0)
的解决方案
static var frameAtStartOfPan: CGRect = CGRectZero
static var startPointOfPan: CGPoint = CGPointZero
这也是不可用的。
最佳答案
CGRect
可以使用 CGPoint
或 CGSize
的实例简单地创建,如下所示。
let rect = CGRect(origin: CGPoint(x: 0,y :0), size: CGSize(width: 100, height: 100))
// Or
let rect = CGRect(origin: .zero, size: CGSize(width: 100, height: 100))
或者,如果我们想指定 CGFloat
或 Double
或 Int
中的每个值,我们可以使用此方法。
let rect = CGRect(x: 0, y: 0, width: 100, height: 100) // CGFloat, Double, Int
CGPoint
可以这样创建。
let point = CGPoint(x: 0,y :0) // CGFloat, Double, Int
CGSize
可以这样创建。
let size = CGSize(width: 100, height: 100) // CGFloat, Double, Int
尺寸和点也以0为值,可以这样完成。
let size = CGSize.zero // width = 0, height = 0
let point = CGPoint.zero // x = 0, y = 0, equal to CGPointZero
let rect = CGRect.zero // equal to CGRectZero
CGRectZero
和 CGPointZero
在 Swift 3.0< 中替换为
.CGRect.zero
和 CGPoint.zero
/
关于uikit - CGRectMake、CGPointMake、CGSizeMake、CGRectZero、CGPointZero 在 Swift 中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37946990/