- 公開日:2015年07月30日
記事概要
その2の続きです。SwiftJsonを利用してjsonデータを扱います。
jsonデータは、livedoor天気情報のお天気Webサービス『Weather Hacks 』を使ってAlamofireから取得したデータを使って説明したいと思います。
開発環境
- Xcode 6.4
- Swift 1.2
難易度
★★★☆☆(普通)
Alamofireの実装
前回のプロジェクトで作成したViewControllerに処理を記載します。
【swift】 import UIKit // 追加 import SwiftyJSON import Alamofire class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }
SwiftyJSONを利用するには、宣言に『import SwiftyJSON』と記載します。
Alamofireをimportしている場合は、『import Alamofire』の上に記載してください。
私の環境では、import Alamofire』の下に記載すると『load module error』が発生しました。
json処理
swiftのjsonを扱い方を学びます。
Dictionary処理
【swift】 // AlamofireでGET REQUESTを送信し、JSONデータを加工する func requestAlamofire() { Alamofire.request(.GET, "http://weather.livedoor.com/forecast/webservice/json/v1", parameters: ["city": 200010]) .responseJSON { (request, response, json, error) in if (response?.statusCode == 200) { println("success") var swiftJson = JSON(json!) self.outputLocation(swiftJson) } else { // error println(error) } } } // Locationデータを出力します func outputLocation(json : JSON) { if let location: Dictionary= json["location"].dictionary { println("dictionary data") println(location) } else { println("dictionary data") } }
上記はjsonファイルのlocationデータをswiftで扱えるように処理しています。
データはDictionaryデータです。
結果確認
上記のコードをビルドして、dubugログを見ると、以下のデータが出力されているのが確認できます。
【log】 success dictionary data [city: 長野, prefecture: 長野県, area: 信越・北陸]
jsonデータがきちんと取得できているのが確認できました。
このように出力したいデータを簡単に加工することができます。
まとめ
AlamofireとSwiftJsonを使うことで、アプリの作成時間を大幅に短縮できます。
その分UIやUXに時間を避けるはずです。
限られた時間をうまく使い、より良いアプリを作っていきましょう。
Swiftでのiphoneアプリ開発にオススメの本
詳細swiftよりこちらの本をオススメします。
objective-cの経験がある人や、初心者から中級者までの開発者はこの本のほうが役に立ちます。
ただし、swiftはバージョンアップの速度が早いので、購入するときは自分が利用しているswiftのバージョンでも役に立つことを確認してから購入するように注意してください。
関連記事
- Swiftではじめるアプリ作成 CocoaPodsでAlamofireとSwiftJsonを使ったアプリを作る その1
- Swiftではじめるアプリ作成 CocoaPodsでAlamofireとSwiftJsonを使ったアプリを作る その2
参考サイト
0 件のコメント:
コメントを投稿