Tocropviewcontroller: Soporte Swift 3

Creado en 4 oct. 2016  ·  6Comentarios  ·  Fuente: TimOliver/TOCropViewController

¿Cómo puedo usar esta biblioteca con Swift 3?

enhancement question

Comentario más útil

Este proyecto está escrito en Objective-C y no es necesario hacer cambios en el código (o reescribirlo completamente en Swift) para usarlo en Swift 3 u otro código de versión Swift, porque los archivos Objective-C y Swift pueden coexistir en un solo proyecto. Entonces, si lo usa a través de CocoaPods, el ejemplo de 'Implementación básica' de Readme en Swift se verá así:

import TOCropViewController

func presentCropViewController() {
    let image: UIImage = ... // Load an image
    let cropViewController = TOCropViewController(image: image)
    cropViewController.delegate = self
    present(cropViewController, animated: true, completion: nil)
}

func cropViewController(_ cropViewController: TOCropViewController!, didCropTo image: UIImage!, with cropRect: CGRect, angle: Int) {
    // 'image' is the newly cropped version of the original image
}

Si copia la fuente al proyecto Swift, consulte la sección 'Importar Objective-C en Swift' aquí https://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html y luego use como ejemplo encima.

Todos 6 comentarios

¡Debería funcionar si lo suelta y agrega un encabezado de puente Objective-C! :)

En algún momento, veré si puedo mejorar el diseño de la API para que sea más 'Swifty' también.

Estoy usando TOCropViewController en el proyecto Swift 3 a través de cocoapods, funcionando bien sin errores.

Esperamos una versión rápida, por favor # @akovalov :) :) :)

@osmanyildirim Realmente no es posible 'esperar' nada de un proyecto de código abierto gratuito. ;)

Si necesita desesperadamente soporte nativo de Swift 3, no dude en implementarlo usted mismo. :D

Este proyecto está escrito en Objective-C y no es necesario hacer cambios en el código (o reescribirlo completamente en Swift) para usarlo en Swift 3 u otro código de versión Swift, porque los archivos Objective-C y Swift pueden coexistir en un solo proyecto. Entonces, si lo usa a través de CocoaPods, el ejemplo de 'Implementación básica' de Readme en Swift se verá así:

import TOCropViewController

func presentCropViewController() {
    let image: UIImage = ... // Load an image
    let cropViewController = TOCropViewController(image: image)
    cropViewController.delegate = self
    present(cropViewController, animated: true, completion: nil)
}

func cropViewController(_ cropViewController: TOCropViewController!, didCropTo image: UIImage!, with cropRect: CGRect, angle: Int) {
    // 'image' is the newly cropped version of the original image
}

Si copia la fuente al proyecto Swift, consulte la sección 'Importar Objective-C en Swift' aquí https://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html y luego use como ejemplo encima.

Jugué un poco al agregar una mejor interoperabilidad de Swift con este proyecto. Aparte de hacer una refactorización completa de los nombres de los métodos usando NS_SWIFT_NAME , CREO que eso es todo lo que podemos hacer.

Si puede pensar en algo más que necesite para mejorar la interoperabilidad de Swift, presente un PR. :)

¿Fue útil esta página
0 / 5 - 0 calificaciones