Git Product home page Git Product logo

adp-delightful-details's Introduction

adp-delightful-details

This repository accompanies a blog post I wrote on Android Design Patterns on animated icons.

It contains over 25 AnimatedVectorDrawables that you can refer to free of charge. You know... cool animated icons like these!

Example animated vector drawables

...or these!

Another example animated vector drawable

...or this!

Another example animated vector drawable

...and also this!

Another example animated vector drawable

...and a bunch of others too!

Additional icon implementations are welcome if you've written anything cool that you want to share... submit a pull request! :)

Some notes on backwards compatibility

This sample app uses a minSdkVersion of 21. However, there is a good amount of stuff in here that could still be used on older platform versions:

  1. VectorDrawableCompat and AnimatedVectorDrawableCompat can for the most part be used on pre-Lollipop devices with a couple of restrictions (continue reading below). Read Chris Banes' blog post for more information. Note that even though this app uses a minSdkVersion of 21, it is still advantageous to use the VectorDrawableCompat support library implementation (as it fixes some framework bugs that existed on API versions 21-22).

  2. Specifying tints, tint modes and/or theme attributes in VectorDrawable XML is supported on all platform versions. Read this blog post for more information.

  3. AnimatedStateListDrawable is not supported on pre-Lollipop devices. However, it is only being used in this project for convenience and is not strictly required (not using it just means you'll need to manually start the AnimatedVectorDrawables yourself).

  4. Path morphing (i.e. animating the android:pathData attribute using an ObjectAnimator) is not supported on pre-Lollipop devices. Sorry!

  5. Using the android:property{X,Y}Name attributes in an ObjectAnimator's XML is not supported on pre-Lollipop devices. These new attributes correspond to the ObjectAnimator#ofFloat(Object, String, String, Path) method, which was only added in API 21.

  6. Defining custom PathInterpolators in XML is not supported on pre-Lollipop devices.

  7. Using the new material design interpolators (such as @android:interpolator/fast_out_slow_in, etc.) is not supported on pre-Lollipop devices. See the documentation for android.R.interpolator for a complete listing of interpolators that can be declared in XML at each platform version. Usually you can get a pretty similar effect using the decelerate and accelerate interpolators, although it won't be identical.

adp-delightful-details's People

Contributors

alexjlockwood avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.