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の設定

 

さいごに

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

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

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

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

[Swift]AlertControllerでメモリリークが起きた!便利なMemory Graph

1 はじめに2 今回の問題2.1 deinitの調査2.2 原因の調査3 解決策4 Memory Graphについて5 さいごに6 おすすめ書籍 はじめに こんにちは、suzukiです。この記事の結論 ...

SwiftGenを使ってみた

1 はじめに2 SwiftGenの特徴2.1 コードジェネレートするリソースを選択することができる2.2 コードジェネレートするのにビルドが必要ない2.3 設定ファイルベースである3 インストール4 ...

swift

[Swift 3] テキストの装飾(フォント・文字サイズ・文字間隔・行間・文字色・下線)

1 はじめに2 フォント・文字サイズ変更3 文字間隔4 行間5 文字色6 下線7 さいごに8 おすすめ書籍 はじめに どうもはじめです。 今回は文字の装飾をやってみようと思います。 完成図を載せておき ...

no image

iOSでFirestoreを使ってみた その2

1 はじめに2 リスナーのアタッチ2.1 ドキュメントのリッスン2.2 複数ドキュメントのリッスン3 ドキュメントの変更タイプの取得4 リスナーのデタッチ5 さいごに6 おすすめ書籍 はじめに 以前、 ...

swift

[iOS]意外と簡単ウィジェット機能を実装してみる

1 はじめに2 OSごとのできること3 ウィジェットの実装3.1 Today Extensionの追加3.2 Chartを表示3.3 表示を増やす3.4 ウィジェットをタップした際にアプリを起動する4 ...

フォロー

blog-page_side_responsive

2017年5月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。