Paylogで使用しているオープンソース13+αを紹介

便利なライブラリ群を公開してくれている開発者のみなさん。本当にありがとうございます。いつもお世話になってます。

Paylogリリース時にも書いておりましたが、このアプリでは多くのオープンソースライブラリを使わせてもらっています。んで、こんな便利なものが世の中にはたくさんあるんで、開発者のみなさんも是非楽になりましょうよ、という話です。

はじめに

オープンソースは、以前なら sourceforge とか google code で探していましたが、最近はもっぱら github ですよね。で、さらにこのサイトをいつも参考にさせてもらってます。ありがとうございます。

そうそう、大事なことですが、以下に挙げたライブラリに関することはもちろん全て自己責任でお願いしますです。

では、Paylogアプリ内の「ライセンス」にならんでいる順に行きましょう。

ActionSheetPicker

UIPickerViewをActionSheetのように表示します。というかコードを見るとまんまActionSheetの上にpickerを貼り付けているわけですが。

クラス構造も結構しっかりしているので、サブクラスによる拡張が容易になってます。

BlocksKit

いろんなクラスにblockで書けるメソッドを追加しまくったライブラリ。ものすごく便利で使いだすとコレ無しでコードが書けなくなるくらい、なんですが、ちょっと癖が強い(というか、裏で勝手な動きをしている気配が強い)ので脱BlocksKit計画中。

Color-Picker-for-iOS

シンプルなカラーピッカー。使い方も簡単。リソース不要なのもいい感じです。

CMPopTipView

ヘルプなんかをポップアップバルーンに表示。

表示位置に関しては若干融通が利かない印象ですが、それほど大した問題じゃないです。

FTFoundation / FTUIKit

会社のほうで作って公開しているライブラリ。

細かいパーツがたくさんです。例えば switch 付の table cell とか、text field 付の table cell とかそういうのもあります。

iOSPlot

グラフ描画ライブラリ。円グラフも折れ線グラフもこれで描画してます。

いろいろカスタマイズしましたけどね。

KKPasscodeLock

先日のv1.1で搭載されたパスコードロック。設定画面付という至れり尽くせりです。

これがなかったらこんなに早く実現はできなかったでしょうね。

PBTweenAnimation

アニメーションまわり。金額を入力して保存した時のアニメーションなんかはこれを使ってます。

Si-Calendar

カレンダー表示。カレンダー系のライブラリはたくさんあるんですが、シンプルで純粋に日付を選択するのにはこれがちょうどよかったです。

SVProgressHUD

プログレスインジケータ。簡単な文字列も挿入できるし、キーボードなどとの位置関係もちゃんと調整してくれるので便利です。

AAMFeedback

フィードバック投稿フォーム。これのおかげでユーザさんからの要望やバグ報告のメールがどんどん来るようになりました。特にバグ報告はすぐに伝えてもらえるのでいいですね。

GradientButton

キーボードのグラデーション付ボタンの元はコレ。テーマ色が簡単に変えられるのもボタンをリソース無しで直に描画できているから。

いろいろ自分なりに調整しましたけれど、かなりそのまま参考にしてます。

番外:KTouchPointerWindow

最後は手前味噌でw 直接使っているわけではないですが、デモ動画を例の Reflection で撮影する時にタッチ位置に赤丸を表示するのに使っています。

あとがき

同じライブラリを使ったからといって同じアプリになるわけではありません。そこはもちろん開発者の腕の見せ所。

でももし単なる車輪の再発明であれば、既存のものを使ったほうがはるかに楽ですからね。

おかしなところがあったら pull request してみるのもいいかもしれない。単に fork するだけでもいいかもしれない。(どっちもしたことないけれど)

自分が作った自分ライブラリを公開してみるのもいいかも。

そんなこんなで、参考になれば幸いです。