無限スクロール出来るiOS用のカレンダーUIを作りました

HIScrollCalendarという無限スクロールが出来るiOS用のカレンダーUIを作りました。

f:id:furuyamayuuki:20131028192935p:plain

もともとは個人的に作っていたアプリに使っていたものですが、そのアプリは日の目を見ずに終わってしまったのでカレンダーの部分をOSSとして公開することにしました。

インストール

CocoaPodsを使っている方はPodfileに指定して下さい。

pod 'HIScrollCalendar', :git => 'https://github.com/addsict/HIScrollCalendar.git'

アプリへの組み込み方

ヘッダ "HIScrollCalendarView.h" を読み込み、HIScrollCalendarViewオブジェクトを作るだけで使えます。 ユーザがタップしたカレンダーの日付は - scrollCalendarView:dateDidChange: というデリゲートメソッドで取得可能です。

#import "HIScrollCalendarView.h"

@interface ViewController : UIViewController <HIScrollCalendarViewDelegate> {
}
@end

@implementation ViewController
- (void)viewDidLoad
{
    [super viewDidLoad];

    HIScrollCalendarView *calendarView = [[HIScrollCalendarView alloc] init];
    calendarView.delegate = self;
    [self.view addSubview:calendarView];
}

- (void)scrollCalendarView:(HIScrollCalendarView *)scrollCalendarView dateDidChange:(NSDateComponents *)dateComponent
{
    NSString *date = [NSString stringWithFormat:@"%d/%d/%d", dateComponent.year, dateComponent.month, dateComponent.day];
    NSLog(@"%@", date); // 2013/10/28
}
@end

さいごに

カレンダーUIで使用している各種フォントや配色は全くconfigurableな作りになっていないので、その辺今後直していけたらなと思ってます。このカレンダーUI自体を取り込まなくても、無限スクロール実装の参考にでもしてもらえれば嬉しいです。

機能要望・バグ報告はこちらまで!
https://github.com/addsict/HIScrollCalendar