Skip to content

About

Android Library to make a flowing gradient effect, similar to that used in Instagram Android login screen

Topics

Resources

Stars

698 stars

Watchers

15 watching

Forks

Repository files navigation

Flowing Gradient Library

Android Arsenal License API Android ver 3.1+ Screenshot

How to use

Add these lines in your build.gradle files:

In your Project Level build.gradle
repositories {
        jcenter()
}
In your App Level build.gradle
dependencies {
    compile 'com.dynamitechetan.flowinggradient:flowinggradient:1.1'
}

Using Maven

<dependency>
<groupId>com.dynamitechetan.flowinggradient</groupId> 
<artifactId>flowinggradient</artifactId>
<version>1.1</version>
<type>pom</type>
</dependency>

BASIC USAGE

   <com.dynamitechetan.flowinggradient.FlowingGradient
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />

To set your own gradients and transition duration using XML, you must add this line in your xml file in the first component:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:gradient="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
</RelativeLayout>

Making your own Gradient Animations.

Make a file like this and place it in drawable folder

<?xml version="1.0" encoding="UTF-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/selected" android:oneshot="false">
    <!-- The drawables used here can be solid colors, gradients, shapes, images, etc. -->
    <item android:drawable="@drawable/one" android:duration="4000"  />
    <item android:drawable="@drawable/two" android:duration="4000" />
    <item android:drawable="@drawable/three" android:duration="4000" />
    <item android:drawable="@drawable/four" android:duration="4000" />
</animation-list>

<!--android:duration="4000" is the duration till the gradient will be shown on the screen-->

Making a Gradient in Android

<?xml version="1.0" encoding="UTF-8"?>
<shape   xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <gradient
        android:angle="45"
        android:endColor="#D38312"
        android:startColor="#FF6B6B"
        android:type="linear" />
    <corners
        android:radius="0dp"/>
</shape>

USING YOUR OWN ANIMATION GRADIENTS USING XML

  <com.dynamitechetan.flowinggradient.FlowingGradient
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        gradient:transition_drawable="@drawable/trans"
        />

SETTING TRANSITION DURATION USING XML

  <com.dynamitechetan.flowinggradient.FlowingGradient
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        gradient:transition_duration = "4000"
        />

Using This Library in JAVA

BASIC USAGE

  RelativeLayout rl = (RelativeLayout) findViewById(R.id.rl);
  FlowingGradientClass grad = new FlowingGradientClass();
                grad.setBackgroundResource(R.drawable.translate)
                .onRelativeLayout(rl)
                .setTransitionDuration(4000)
                .start();

####You are requested to use the methods in this order or sometimes it can end up in a null pointer exception.

.onReltiveLayout() and be replaced by .onImageView() or .onLinearLayout()  as per use.

To set Alpha of the transition

  RelativeLayout rl = (RelativeLayout) findViewById(R.id.rl);
  FlowingGradientClass grad = new FlowingGradientClass();
                grad.setBackgroundResource(R.drawable.translate)
                .onRelativeLayout(rl)
                .setTransitionDuration(4000)
                .setAlpha(4)
                .start();

License

Copyright (c) 2016 Chetan Kaushik

Licensed under the Apache License, Version 2.0

About

Android Library to make a flowing gradient effect, similar to that used in Instagram Android login screen

Topics

Resources

Stars

698 stars

Watchers

15 watching

Forks

Releases

Packages

Contributors

Languages