Platformsios 6.0, osx 10.9, requires ARC

CI Status

Minimalistic component for updating UI at right time.

RKCalendarLink is one class, that will invoke your code whenever given calendar unit will change. All is done by using Foundation framework. No magic stuff :)


Let’s say you want to display time label, which will display hours and minutes. But to keep minutes in sync you have to setup timer, which will fire every second.

But with this library it will fire only one time per minute. Also it is easy to use, see this example:

// self.timeLabel is instance of UILabel
// self.dateFormatter is instance of NSDateFormatter

__weak __typeof(self) w_self = self;
self.calendarLink = [[RKCalendarLink alloc] initWithCalendarUnit:NSCalendarUnitMinute updateBlock:^{
    w_self.timeLabel.text = [w_self.dateFormatter stringFromDate:[NSDate date]];

self.timeLabel.text = [w_self.dateFormatter stringFromDate:[NSDate date]];

To see it alive, download this repo and run example project.

Migration guide from version 0.X to 1.X

From version 1.0, the update block is not called after initialization of the link, so you have to keep that in mind and make appropriate changes.
Also RKCalendarLink now allows to start & stop the link, this could be usefull in UIViewController subclass.

Supported OS & SDK Versions

  • Supported build target – iOS 6.0 / Mac OS 10.9 (Xcode 5.0)
  • Earliest supported deployment target – iOS 6.0 / Mac OS 10.9

NOTE: Mac is not tested, but it should work.


RKCalendarLink is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'RKCalendarLink', '~> 0.1'


Roman Kříž, [email protected]


RKCalendarLink is available under the MIT license. See the LICENSE file for more info.

Latest podspec

    "name": "RKCalendarLink",
    "version": "1.0",
    "summary": "CADisplayLink for calendar",
    "description": "Simple component for updating time labels at right time.nnNotifies you whenever given calendar unit will change.",
    "homepage": "",
    "license": "MIT",
    "authors": {
        "Roman Kru030ciu0301zu030c": "[email protected]"
    "source": {
        "git": "",
        "tag": "v1.0"
    "social_media_url": "",
    "platforms": {
        "ios": "6.0",
        "osx": "10.9"
    "requires_arc": true,
    "source_files": "Pod/Classes",
    "public_header_files": "Pod/Classes/**/*.h",
    "frameworks": "Foundation"

Pin It on Pinterest

Share This