Después de convertir el código a la última versión de swift 3.0, aparece este error.
También dime solución para CGSize = CGSizeMake(0,0)
static var frameAtStartOfPan: CGRect = CGRectZero
static var startPointOfPan: CGPoint = CGPointZero
Que tampoco está disponible.



Respuestas:
CGRectSe puede crear simplemente usando una instancia de aCGPointoCGSize, eso se da a continuación.O si queremos especificar cada valor de
CGFloatoDouble, oInt, podemos utilizar este método.CGPointSe puede crear así.CGSizeSe puede crear así.También tamaño y punto con 0 como valores, se puede hacer así.
CGRectZero&CGPointZeroreemplazado conCGRect.zero&CGPoint.zeroinSwift 3.0.fuente
Solución rápida para CGRectMake, CGPointMake, CGSizeMake en Swift3 y iOS10
Agregue estas extensiones:
Luego, vaya a " Buscar y reemplazar en el área de trabajo " Encuentre CGRectMake, CGPointMake, CGSizeMake y reemplácelos con CGRect, CGPoint, CGSize
Estos pasos pueden ahorrar todo el tiempo ya que Xcode en este momento no nos da una conversión rápida de Swift 2+ a Swift 3
fuente
En Swift 3, simplemente puede usar
CGPoint.zerooCGRect.zeroen lugar deCGRectZerooCGPointZero.Sin embargo, en Swift 4,
CGRect.zeroy'CGPoint.zero'funcionaráfuente
Si desea usarlos como en swift 2, puede usar estas funciones:
Para CGRectMake:
Para CGPointMake:
Para CGSizeMake:
Simplemente colóquelos fuera de cualquier clase y debería funcionar. (Funciona para mí al menos)
fuente
Las estructuras, así como todos los demás símbolos en Core Graphics y otras API, se han vuelto más limpios y también incluyen nombres de parámetros. https://developer.apple.com/reference/coregraphics#symbols
Ejemplo de CGPoint:
Ejemplo de CGVector:
Ejemplo de CGSize:
Ejemplo de CGRect:
Blog de Apple
La sintaxis de Swift y los cambios de cambio de nombre de API en Swift 3 hacen que el lenguaje se sienta más natural y brindan una experiencia Swift-y aún más cuando se llaman frameworks Cocoa. Los marcos populares Core Graphics y Grand Central Dispatch tienen interfaces nuevas y mucho más limpias en Swift.
fuente
Intenta lo siguiente:
Esto es para el de SWIFT versión más reciente
fuente
Bono Swift 3: ¿Por qué nadie mencionó la forma corta?
.zeroen vez deCGPoint.zeroCuando se define el tipo, puede omitirlo de forma segura.
fuente
Puede usar esto con el reemplazo de CGRectZero
fuente
En Swift 4 funciona como a continuación
fuente
Para CGSize
fuente