Blogs

2015

Have you ever looked longingly at the Core Animation template in Instruments and wished it worked for OS X apps? Sadly that hasn’t happened yet, but workarounds exist. In this post, we’ll be exploring ways to debug Core Animation on the Mac so you can make your app as optimized as possible. Since we don’t have access to the Core Animation template, we’re going to have to resort to two different tools for debugging and profiling. Read More...

2014

Let’s talk about the current state of animations on OS X. We’ll go through the best approaches for getting the best performance out of standard animations, and the hacks needed to go beyond basic animations. No layers The most basic of animations on OS X is driven through the use of NSAnimationContext with no layer-backed views. Here’s how we’d animate our view to the right: [NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) { context.duration = 2. Read More...

2013

Core Animation is an advanced compositing and animation framework for iOS and OS X. Not only does it open up the ability to perform incredible animations with just a few lines of code, but it also includes powerful objects called layers, which are extremely lightweight objects that contain some type of visual content which can be easily manipulated by transforms. This article will explore various aspects of Core Animation, beginning with layers. Read More...
First introduced in OS X Lion, view-based table views are a significant advancement over previous cell-based table views. Not only are views easier to work with and customize, but they’re also trivial to animate. The API is fantastic. So what’s the catch? Scrolling. A standard, unoptimized view-based table view with a somewhat complex layout will have an extremely tough time achieving buttery smooth scrolling at 60 fps. The good news is that we can fix this. Read More...