SSCalendar 0.0.3

SSCalendar 0.0.3

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布上次发布2017年1月

Steven Preston 维护。




介绍

SSCalendar 是一个 UI 库,可以用在你的应用中显示事件日历。这个日历库最初在 2013 年构建,用于一个需要类似 iOS 7 新版苹果日历应用体验的项目。当时,我找到了非常少的日历库,并决定自己构建一个。请注意,这个日历不是作为选择器设计的,而是用来显示现有的一系列事件。

SSCalendar 提供了 3 种不同的日历视图

按年视图

Annual

按月视图

Monthly

按周和按日视图

Daily/Weekly

不足之处

如果对这个库感兴趣,我将努力改进它。目前它的功能有限,结构较差。一些需要改进的方面:

  • 没有测试
  • 不优美,结构差
  • 难以定制
  • 特性有限

示例

要运行示例项目,克隆仓库,然后首先从示例目录运行 pod install

要求

iOS 8 及以上。

安装

SSCalendar 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile

pod "SSCalendar"

用法

首先,导入模块

import SSCalendar

然后,生成数据以填充日历。数据应采用 SSEvent 对象数组的格式

private func generateEvents() -> [SSEvent] {
  var events: [SSEvent] = []
  for year in 2016...2021 {
    for _ in 1...200 {
      events.append(generateEvent(year));
    }
  }
  return events
}

private func generateEvent(year: Int) -> SSEvent {
  let month = Int(arc4random_uniform(12)) + 1
  let day = Int(arc4random_uniform(28)) + 1

  let event = SSEvent()
  event.startDate = SSCalendarUtils.dateWithYear(year, month: month, day: day)
  event.startTime = "09:00"
  event.name = "Example Event"
  event.desc = "Details of the event"

  return event
}

接下来,实例化你想要显示的日历视图控制器类型(SSCalendarAnnualViewController 或 SSCalendarMonthlyViewController),以及事件数组

let annualViewController = SSCalendarAnnualViewController(events: generateEvents())
let navigationController = UINavigationController(rootViewController: annualViewController)
navigationController.navigationBar.translucent = false
self.presentViewController(navigationController, animated: true, completion: nil)

作者

Steven Preston,[email protected]

许可证

SSCalendar 可在MIT许可下使用。更多信息请参阅LICENSE文件。