便利なライブラリ群を公開してくれている開発者のみなさん。本当にありがとうございます。いつもお世話になってます。
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 するだけでもいいかもしれない。(どっちもしたことないけれど)
自分が作った自分ライブラリを公開してみるのもいいかも。
そんなこんなで、参考になれば幸いです。