Animation in Honeycomb

One of the new features ushered in with the Honeycomb release is a new animation system, a set of APIs in a whole new package (android.animation) that makes animating objects and properties much easier than it was before.

“But wait!” you blurt out, nearly projecting a mouthful of coffee onto your keyboard while reading this article, “Isn’t there already an animation system in Android?”

Animation Prior to Honeycomb – Indeed, Android already has animation capabilities: there are several classes and lots of great functionality in the android.view.animation package. For example, you can move, scale, rotate, and fade Views and combine multiple animations together in an AnimationSet object to coordinate them. You can specify animations in a LayoutAnimationController to get automatically staggered animation start times as a container lays out its child views. And you can use one of the many Interpolator implementations like AccelerateInterpolator and Bounce to get natural, nonlinear timing behavior.

But there are a couple of major pieces of functionality lacking in the previous system.

For one thing, you can animate Views… and that’s it. To a great extent, that’s okay. The GUI objects in Android are, after all, Views. So as long as you want to move a Button, or a TextView, or a LinearLayout, or any other GUI object, the animations have you covered. But what if you have some custom drawing in your view that you’d like to animate, like the position of a Drawable, or the translucency of its background color? Then you’re on your own, because the previous animation system only understands how to manipulate View objects.

The previous animations also have a limited scope: you can move, rotate, scale, and fade a View… and that’s it. What about animating the background color of a View? Again, you’re on your own, because the previous animations had a hard-coded set of things they were able to do, and you could not make them do anything else.

It is for these reasons, among others, that we decided to offer a new animation system in Honeycomb, one built on the idea of “property animation.”

Continue reading…

Related Posts

EFF Brief: “Privacy” Protections for Corporations Undermines Government Transp... EFF and a coalition of public interest groups urged the U.S. Supreme Court in an amicus brief Tuesday to reject so-called "privacy" protections for co...
Android App Permissions Dissected Based on our recent research and feedback from our users, we know that Android permissions can sometimes be confusing. Often it is hard to tell what d...
The Tortoise and the Hare: The tale of Android evolution Android is all the rage these days. In my meetings and correspondences with consumer electronic vendors around the world it is as if they have totally...
The Message of Firesheep: “Baaaad Websites, Implement Sitewide HTTPS Now!” The Firesheep Firefox extension has been scaring users across the Internet since its introduction at the Toorcon security conference this past weekend...
Amazon app store for Android welcomes DRM Molly de Blanc: In 2007, Amazon announced their music store. It would, they promised, deliver DRM-free music to U.S. Amazon users. And they did just ...
VLC developer takes a stand against DRM enforcement in Apple’s App Store Rémi Denis-Courmont is one of the primary developers of the VLC media player, which is free software and distributed under the GPL. Earlier this week...

We Recommend These Vendors

Launch an SSD VPS in Europe, USA, Asia & Australia on Vultr's KVM-based Cloud platform starting at $5:00/month (15 GB SSD, 768 MB of RAM).

Deploy an SSD Cloud server in 55 seconds on DigitalOcean. Built for developers and starting at $5:00/month (20 GB SSD, 512 MB of RAM).

One Comment

  1. that’s an amazing animation!

Leave a Comment

Your email address will not be published. Required fields are marked *