Xcodeこんにちわインケンです。先月からswiftを始めました。Obj-Cもまともに触ったことないし、全くのiOS初心者です。「はじめてのアプリ」みたいな初心者本はいくつか読んだのですが、もうちょっと突っ込んだ情報が欲しいなーと作りながら思っていたので、同じような境遇にいる初心者の方の参考になれば。Xcodeのバージョンは6.3.1です。https://github.com/inkenkun/RssReaderストーリーボードは使わず、カスタムセルのxibとコードのみで作りました。タブというかメニュー型のカテゴリがあってスワイプすると、そのカテゴリの記事の一覧に切り替わります。一覧の記事をタップすると右の詳細ページへ。詳細ページはWEBブラウザになっています。使用するライブラリ使用したライブラリはこれAlamofirehttps://github.com/Alamofire/Alamofire通信部分をいい感じに書きやすくしてくれるライブラリです。RSSのAPIを叩いて結果を取得する部分を担っていますSwiftyJSONhttps://github.com/SwiftyJSON/SwiftyJSONJSONを簡単に扱うためのライブラリです。RSSはXMLなのですがJSONの方が汎用性があるので、今回はGoogleのRSSをJSONにしてくれるAPIを通してから取得しています。PageMenuhttps://github.com/uacaps/PageMenuメニューによってページの切り替えをいい感じにやってくれるライブラリです。メニュー切り替えを行っています。HTMLReaderhttps://github.com/nolanw/HTMLReaderHTMLパーサーです。一覧でのサムネイルの取得と、タイトルの下の内容文の取得で使っています。SVProgressHUDhttps://github.com/TransitApp/SVProgressHUDローディングのくるくるを超簡単に付けられるライブラリです。TOWebViewControllerhttps://github.com/TimOliver/TOWebViewControllerブラウザライブラリです。標準のWebViewでもいいかなーと思ったのですが、なんとなくPullToRefreshSwifthttps://github.com/dekatotoro/PullToRefreshSwiftPullToRefreshを簡単に実装できるライブラリです。あと、サムネイル画像がなかった時のNoPhotoアイコンはicon8のを使用しています。1.プロジェクトを作るまずはプロジェクトを作ります。Applicationで作ります。RssReaderなのにnewsってつけてしまいました、、、LanguageはもちろんSwiftで、作成されたらライブラリを入れるためプロジェクトを一旦閉じます。NodeJSのnpmみたいなもんですね。Podsの入れ方などはこの辺を参考に。initをやるとPodfileが作られます。Podfileの中身を以下のように変更します。installをすると、ライブラリがインストールされます。開いて開発していくことになります。pagemenuのCAPSPageMenu.swiftがエラーを大量に吐き出しました。執筆時点ではCocoaPodsに登録されているpagemenuのライブラリのバージョンが低いため、Xcode6.3.1だとエラーになります。そこで、pagemenuのgitからCAPSPageMenu.swiftのソースをまるまるコピーしてきて上書きします。これでエラーはなくなりました。CocoaPodsに対応していないライブラリを入れる残念ながらこれ書いてる時点では、PullToRefreshSwiftがCocoaPodsに対応していないので、これだけは手動で入れる必要があります。言ってもファイルをドラッグ&ドロップするだけです。neededにして、必要であればgroupでまとめちゃいましょうObjective-Cのライブラリをswiftで使えるようにする今回使ったライブラリの中で、SVProgressHUDとTOWebViewControllerの2つがObj-Cで書かれているので、そのままでは使えずブリッジヘッダファイルを用意しなければなりません。手動で作ることもできるみたいですが、Obj-Cファイルを作成すると「ブリッジングヘッダファイル作る?」と聞かれて勝手に作ってくれるのでこれを利用しますこのファイルは消すので、適当な名前つけときます。自動的に追加してくれます。Podsのパスは自動的に追加してくれないので、自分で追加します。Pathsに以下の設定をします。今作ったObj-Cのダミーファイルは削除しちゃいましょう。photoの画像もimages.xcassetsにドラッグ&ドロップして追加しておきます3.カスタムセルを作るライブラリが整ったところで早速コードと行きたいところですが、まずは記事一覧の一つ一つのセルのパーツを作ります。Classを作ります。ファイルが作られるので、CustomCell.xibを開いてパーツを配置していきます。InspectorのIdentifierを「Cell」にします。セル全体の高さは140としておきます。パーツは今回はUIImageViewとUILabelを使いますUIImageは以下のように設定します。photoの画像を指定します。Subviewをチェックしないと画像がはみ出ます。AutoLayoutのPinで右上のように設定します。タイトルを表示するラベルも配置して設定していきます。コンテンツはこんな感じパーツとコードを紐付けるパーツを配置したらそれをコードと紐付けます。マウスでびーって、こんな感じに。これでカスタムセルの完成です。必要なライブラリ、パーツが揃ったので、コードを書いていくためのファイルを作成します。