SwiftでSDWebImageを使いたい
SDWebImageはObjective-Cで作成されています。
SwiftのプロジェクトでObjective-Cで作成されたライブラリを利用し、実際にSDWebImageを動かすところまでのメモ。
1. Swiftプロジェクトを作る
XCodeのバージョンは6.1.1です。
Xcode > File > New > Project...
プロジェクト名はとりあえず「SampleProject」としました。
つぎはObjective-Cのライブラリを使えるようにしていきます。
2. SDWebImageのライブラリを導入する
ライブラリの導入は以下の3タイプが通常
1. CocoaPodsを使う
2. Githubからcloneする
3. zipファイルをダウンロード
ここでは最も単純な「3. zipファイルをダウンロード」で進めます。
そのほかの方法についてはSDWebImageのInstallationを読んでみてください。
1. zipファイルをダウンロードする
ダウンロードページからSouceCode(Zip)でダウンロードしてください。
ダンロードしたZipファイルは解凍します。
2. Xcodeのプロジェクトに導入
解凍したディレクトリ内の「SDWebImage」をXcodeのプロジェクトに直接ドラッグしてドロップ。
「Copy items if needed」はチェックしておいてください。
こんな感じになっているはず。
3. Objective-Cライブラリを利用するための設定
SwiftプロジェクトでObjective-Cライブラリを使うためには、ブリッジの設定が必要らしい。
プロジェクトフォルダを右クリック > NewFile...
iOS > Source > Header File を選択します。
ファイル名は何だっていいんですが「ProjectName-Bridging-Header.h」が一般的らしい。
作成したSampleProject-Bridging-Header.hに以下を記入。
#import "UIImageView+WebCache.h"
・SampleProject-Bridging-Header.h
#ifndef SampleProject_SampleProject_Bridging_Header_h #define SampleProject_SampleProject_Bridging_Header_h #import "UIImageView+WebCache.h" #endif
ヘッダーファイルを登録します。
Build Setting > Swift Compiler > Objective-C Bridging Header
これで使うまでの準備が完了。さあ、実際に動くか試してみましょう。
4. SDWebImageを利用する
Main.storyboardに右下のImage Viewをドラッグで設置。
アシスタントエディタを表示して、Controlを押しながらViewController.swiftにIBOutletを追加。
sampleImage.sd くらいまで書いたら、補完が表示されるはず。
今回はGoogleのロゴを表示して終了します。
お疲れ様でした。