Die beste Option ist das Ziehen und Ablegen des SDWebImage-Ordners in das Projekt. Stellen Sie sicher, dass "Artikel bei Bedarf kopieren" angekreuzt ist.
Machen Sie eine Obj C Bridging: Datei -> Neu -> Quelle -> Header-Datei -> Name als AppName-Bridging-Header.
Fügen Sie die folgenden:
#ifndef AppName_AppName_Bridging_Header_h
#define AppName_AppName_Bridging_Header_h
#import <SDWebImage/UIImageView+WebCache.h>
#import "UIImageView+WebCache.h"
#endif
or
#import "UIImageView+WebCache.h"
Referenz: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html
Hinweis: Einstellungen beim Aufbau, in Swift Compiler - Code-Generierung, stellen Sie sicher, dass die Objective-C-Bridging-Header bauen unter einen Pfad zu der hat Einstellung Bridging-Header-Datei. - es ist wie testSD/testSD-Bridging-header.h oder testSD-Bridging-header.h (Projektordner öffnen und die Header-Datei Pfad finden)
Jetzt mit diesem Code versuchen:
let block: SDWebImageCompletionBlock! = {(image: UIImage!, error: NSError!, cacheType: SDImageCacheType!, imageURL: NSURL!) -> Void in
println(self)
}
let url = NSURL(string: "http://arrow_upward.com/350x150")
self.imageView.sd_setImageWithURL(url, completed: block)
Angenommen Wenn Sie eine UICollectionView verwenden, um Cache Imaging zu füllen, versuchen Sie es mit diesem Code.
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = photoListCollectionView.dequeueReusableCellWithReuseIdentifier("scoutimagecellidentifier", forIndexPath: indexPath) as! ScoutImageCell
//Loading image from server using SDWebImage library
let thumbImageUrl = NSURL(string: self.photoPropertyArray[indexPath.row] as String)
//Image Fetching is done in background GCD thread
SDWebImageManager.sharedManager().downloadImageWithURL(thumbImageUrl, options: [],progress: nil, completed: {[weak self] (image, error, cached, finished, url) in
if let wSelf = self {
//On Main Thread
dispatch_async(dispatch_get_main_queue()){
cell.scoutimage.image = image
cell.photoloader.stopAnimating()
}
}
})
return cell
}
http://stackoverflow.com/questions/24948480/sdwebimage-crash-in-swift –
besser Sie Verwenden Sie Haneke zum Zwischenspeichern von Bildern in swift https://github.com/Haneke/HanekeSwift –
@Saurabh Prajapati: Haben Sie das verwendet? Wie ist das? – Developer