iOS

Swift3 + Alamofire4 + Unbox2.4を使ってJSONをパースする

投稿日:2017年5月31日 更新日:

はじめに

こんにちは、はじめです。

 

今回はAlamofireとUnboxを使ってJSONのパースをしてみようと思います。

サンプルコードではiTunesのAPIでアーティスト検索を行っています。

前提条件

・Swift 3.1
・Xcode 8.3.2
・Carthage 0.23.0
・Alamofire 4.4.0
・Unbox 2.4.0

 

完成形

完成形は以下の画像のようにSearchBarに入力をし検索を行うと、

検索結果がテーブルに表示される形になります。

ソースは以下のようになります。

 

モデルの作成

Unboxを使ってモデルの作成を行います。

今回はiTunesの楽曲情報の中からアーティスト名、楽曲名、楽曲の金額を取得します。

(表示に使用しているのは楽曲名だけです。)

 

次にUnboxでJSONのパースを行います。

 

 

APIクラスの作成

Alamofireに渡すためのURLを作成します。

今回はアーティスト名でのみ検索を行うので検索する文字列以外は固定となっております。

APIクラスを実行する際に検索する文字列をURLに追加する処理をイニシャライザとして用意しておきます。

 

実際にAPIを実行する処理は以下になります。

 

ViewControllerの作成

はじめにstoryboard上でSearchBarとTableViewを追加し、outlet接続しておきます。

Delegateの指定

SearchBarとTableViewのデリゲートを指定します。

 

TableViewの設定

TableViewの表示に必要なコードを記述します。

 

SearchBarの設定

 

さいごに

このままだと日本語での検索に失敗してしまいました。

今後の課題として修正して行こうと思っております。

解決した際また記事にしてみようと思います。

age_footer_300rect




age_footer_300rect




-iOS

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

SwiftでS3への画像アップロード

1 はじめに2 AWS上での事前準備3 CocoaPodsでAWS SDKをインストールをする4 認証の設定をする5 UIImageを保存して、URLを取得する6 S3へアップロードする7 さいごに …

Swift3でMapKitの吹き出し(Callout)タップを取得したい!

1 はじめに2 MapKitでの吹き出しタップ3 吹き出しのみタップしたい!4 さいごに はじめに こんにちは、nukkyです。 今回、iOSのMapKitでGoogleMapのように 吹き出しのタッ …

SwiftでTTTAttributedLabelの文字列からリンク表示

1 はじめに2 TTTAttributedLabelとは3 CocoaPodsでインストール4 実装4.1 Labelの表示4.2 タップの検知5 さいごに はじめに こんにちは。 はじめましてnuk …

[Swift3]で直感的にアニメーションが記述できるライブラリ「Cheetah」

1 はじめに2 準備3 実装3.1 準備3.2 移動3.3 回転と拡大3.4 速度調整3.5 繰り返し3.6 アニメーションの終了4 さいごに はじめに こんにちは、nukkyです。 今回は、仕事でV …

SnapKItをつかってコードでも簡単にAutoLayout実装

1 はじめに2 準備3 実装3.1 準備3.2 AutoLayoutを指定3.3 UIAlertControllerのカスタム4 さいごに はじめに こんにちは、nukkyです。 iOSの実装中にコー …

page_side_300rect






follow us in feedly

2017年5月
« 4月   6月 »
 123456
78910111213
14151617181920
21222324252627
28293031