使用swift项目的自定义日历

时间:2015-01-08 04:48:25

标签: ios swift ios8

我需要实现我的项目自定义日历,但我是ios的新手,不知道该怎么做!我读过各种文章,但我意识到我自己不这样做!也许有某种类型的库允许eto.Spasibo提供任何帮助!

1 个答案:

答案 0 :(得分:4)

使用这个可可豆荚,它非常方便,易于使用JTCalendar

基本用法

您必须在UIViewController中创建两个视图。

第一个视图是JTCalendarMenuView,它代表月份。

第二个视图是JTCalendarContentView,日历本身。

您的UIViewController必须实现JTCalendarDataSource

#import <UIKit/UIKit.h>

#import "JTCalendar.h"

@interface ViewController : UIViewController<JTCalendarDataSource>

@property (weak, nonatomic) IBOutlet JTCalendarMenuView *calendarMenuView;
@property (weak, nonatomic) IBOutlet JTCalendarContentView *calendarContentView;

@property (strong, nonatomic) JTCalendar *calendar;

@end
JTCalendar is used to coordinate calendarMenuView and calendarContentView.

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.calendar = [JTCalendar new];

    [self.calendar setMenuMonthsView:self.calendarMenuView];
    [self.calendar setContentView:self.calendarContentView];
    [self.calendar setDataSource:self];
}

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    [self.calendar reloadData]; // Must be call in viewDidAppear
}

- (BOOL)calendarHaveEvent:(JTCalendar *)calendar date:(NSDate *)date
{
    return NO;
}

- (void)calendarDidDateSelected:(JTCalendar *)calendar date:(NSDate *)date
{
    NSLog(@"%@", date);
}

@end

有关按日期组织事件的更多信息,请参阅示例项目。

https://github.com/jonathantribouharet/JTCalendar