iPhone用のカレンダーコンポーネント

iPhoneの標準のカレンダーのような見た目を作るのはちょっとめんどくさい。

探してみたら Kalというオープンソースのコンポーネントがあった。ライセンスはMITっぽい。

Kal-github

本来は「Integrating Kal into Your Project」のように、参照して使うもんだと思うけど、今回は結構カスタマイズしたいのでソースをコピーしてちまちまいじりながら使おうかと思ってる。

基本的にはインスタンスをつくって、DelegateとDataSourceを設定してあげればよし。

UITableViewDataSourceはした半分のテーブルビューを表示するために必要。

・presentingDatesFrom

ここでデータをフェッチする。DBとかにアクセスしたり、Webからデータを持ってくるときは非同期でデータを取って来るべし。データがメモリ上にロードされたら[delegate loadedDataSource:self];とかを呼び出せば良い。これを呼び出すとmarkedDatesFromがコールバックされる。

・markedDatesFrom

データがあるNSDateのアレイを返すべし。

・loadItemsFromDate

日付ごとにあるデータを作っておくべし。した半分のテーブルビュー用のデータ。

・removeAllItems

データを削除するべし。日付が変わった時とかにデータをクリアする目的で呼び出される。

という感じで、適当に実装するといいとおもう。

「iPhone用のカレンダーコンポーネント」への1件のフィードバック

コメントを残す