zu verwenden Ich versuche, Schließung Xcode8 beta4 mit Swift3 zu verwenden, aber es funktioniert nicht. Gleiche Funktionen mit Schließung in Swift2.2, aber es schlägt in Swift3 fehl.Nicht in der Lage, Verschlusssyntax in Swift 3
Swift 2,2
UIView.animateWithDuration(0.5, animations: {
self.viewForInstagramLoginWebView.frame = CGRectMake(x, y,self.viewForInstagramLoginWebView.frame.size.width , self.viewForInstagramLoginWebView.frame.size.height)
}) { (finished) in
SVProgressHUD.dismiss()
}
Aber gleiche Syntax funktioniert nicht mit swift3.
Versuchen Sie auch, indem Sie Funktion mit Schließung erstellen.
func greetingMessageWithDate(date : NSDate, message :String, successHandler : (greetingMessage : String, code : Int) -> Void){
}
Gleiche Funktion arbeitet in Swift 2.2, aber nicht in 3 Swift
Auch mit SDWebImage
Abschluss Block zugewandt Problem. Ich kann SDWebImage
ohne Abschluss-Handler verwenden, aber mit Abschluss-Handler schlägt es fehl.
Funktioniert ohne Abschluss-Handler.
imageView.sd_setImage(with: URL(string: "imageURL"), placeholderImage: UIImage(named : "imageName"))
Wenn jedoch mit Complete-Handler verwendet wird, beschwert sich Compiler mit gegebener Nachricht.
mehrdeutige Verwendung von "sd_setImage (mit: placeholderImage: fertig :)
imageView.sd_setImage(with: url, placeholderImage: UIImage(named: "imageName"), completed: { (image, error , cacheType , imageURL) in
})
Es sieht aus wie eine Änderung der Schließung Syntax sein würde, aber wie das finden Was läuft falsch?
Können Sie mir Lösung für 'SDWebImage'? – technerd
Ich denke, es ist momentan nicht kompatibel zu Swift 3. Die reguläre Swift 3-Syntax funktioniert nicht ohne weiteres. Es gibt auch ein offenes Problem bezüglich der Swift 3-Unterstützung: https://github.com/rs/SDWebImage/issues/1627 –
Könnten Sie die Antwort als richtig für die allgemeine Verwendung von Schließungen mit Swift 3 markieren? –