Creating AnimatedVectorDrawables on Android requires you to create three xml resources that represents each of the following
animated-vector , objectAnimator and vector. The <vector /> is the actual file that represents the vector drawable.
The <objectAnimator /> defines the animation to apply to different parts of the vector and the <animated-vector />
is used to link the vector drawable and the animation together.
As an example, to create an animated vector drawable that transforms a play icon to stop icon, the following xml files will be created. The Vector drawable:
In this blog post, we are going to be talking about the Android Support
Annotations Library and why we should care about it.
Version 19.1 of the support library included a new annotations package which
contains a number of useful annotations that can be added to your code, to help
catch bugs. These annotations will help Android studio to check your code for
possible errors and report them to you. As of version 22.2 of the support
library, this annotations package has been enriched with an additional 13
annotations.
Bottom Sheet is a material design component, that was added to design support
library in version 23.2. Bottom sheet is a very simple window that displays from the
bottom of the screen, and can be used to reveal more content to the user.
Examples of bottom sheet can be seen in some of Google’s apps and widgets,
such as the Place Picker from the Places API.
In this post, I will be showing how you can use bottom sheets in your apps.
If you have ever thought of writing your own custom Android library for others
to use or extend, and wonder how you could achieve that, then you can join me on
this ride. In this post, I will be showing a step by step guide on how to create
an Android library. I will also be showing you how to distribute your library
through JitPack.
Lambda Expressions are one of the most important features added to Java 8. Prior
to Lambda Expressions, implementing functional interfaces i.e interfaces with
only one abstract method has been done using syntax that may seem cumbersome and
unclear. In cases like this, what we are trying to do is pass a functionality
as an argument to a method, such as what happens when a button is clicked. Lambda
expressions enables you to do just that, in a way that is much more compact and
clear. In android for example, lambdas can replace anonymous inner
class when providing event listeners.
Syntax of Lambda Expressions
A lambda expression consist of the following:
A comma separated list of formal parameters enclosed in parentheses. The data
types of the parameters in a lambda expression can be omitted. Also the
parenthesis can be omitted if there is only one parameter. For example:
The arrow token ->
A body which contains a single expression or a statement block. If a single
expression is specified, the java runtime evaluates the expression and then return
its value. To specify a statement block, enclose statements in curly braces "{}"