Developing easy to use any animation set for splash screen or any other views in your Android application

Overview

AnimateViewLibrary

codebeat badge License

Developing easy to use any animation set for splash screen or any other views in your Android application. Easy to use, so you can animate your whole app just using this library.

Alpha Release

Alpha release of Starter Animation for android application. Feel free to suggest. Thank you

Features

  • Create an Starter/Splash animation with any animation
  • Can able to use multiple animation files on a single view.
  • Easy implementation for any activity and fragment

Demo (.GIF)

Implementation

  • Step-1: Add the JitPack repository to your build file
allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  • Step-2: Add the dependency
dependencies {
	        implementation "com.github.sam43:AnimateViewLibrary:$latest_version"
	}

where last release version is the letest_version.

  • Step-3: Create list of animations to be applied to We will be creating a list of animation like below and pass it to the library with the view, on which the animation will be applied. List of animation method, will be something like this :-

Kotlin Implementation:

    private fun getAnimList(): ArrayList
   
     {
        // create list of animations
        val animList: ArrayList
    
      = ArrayList()

        animList.add(createAnimation(applicationContext, R.anim.no_animaiton))
        animList.add(createAnimation(applicationContext, R.anim.rotate))
        animList.add(createAnimation(applicationContext, R.anim.zoom_out_fast))
        animList.add(createAnimation(applicationContext, R.anim.fade_in))

        return animList
    }

    
   

Java Implementation:

    private ArrayList
   
     getAnimList() {
        ArrayList
    
      animList = new ArrayList<>();

        // We need to add INSTANCE when ever we need to access a object file in kotlin from java class
        // This denotes that CreateAnim is a singleton file and can able to have only one instance

        animList.add(CreateAnim.INSTANCE.createAnimation(getApplicationContext(), R.anim.no_animaiton));
        animList.add(CreateAnim.INSTANCE.createAnimation(getApplicationContext(), R.anim.rotate));
        animList.add(CreateAnim.INSTANCE.createAnimation(getApplicationContext(), R.anim.zoom_out_fast));
        animList.add(CreateAnim.INSTANCE.createAnimation(getApplicationContext(), R.anim.fade_in));

        return animList;
    }


    
   
  • Step-4: Use the animation list for the library Finally, We will be passing the list and implement the listener provided which will notify the application when animations have ended. The implementation will be like below:-

Kotlin Implementation:

        StarterAnimation(
            resList = getAnimList(),
            onAnimationListener = object : OnAnimationListener {
                override fun onRepeat() {}

                override fun onEnd() {
                    // TODO: Do what you want to do after end of animations
                }

                override fun onStartAnim() {
                }
            }
        ).startSequentialAnimation(view = imageView)
    

Java Implementation:

     ImageView appLogo = findViewById(R.id.imageView);
        new StarterAnimation(getAnimList(), new OnAnimationListener() {
            @Override
            public void onStartAnim() { // TODO::
            }

            @Override
            public void onRepeat() { // TODO::
            }

            @Override
            public void onEnd() {
                // TODO: Do what you want to do after end of animations
            }
        }).startSequentialAnimation(appLogo);

Well, That's all. Please let me know if you guys have any suggestions. Any suggestion will be appreciated. Thanks

License

                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   Copyright [2020] [A S M Sayem]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

You might also like...
Easy-Note - Easy Note Application will help user to add and update their important notes
Easy-Note - Easy Note Application will help user to add and update their important notes

Easy-Note πŸ—’οΈ Easy Note App helps you to create your notes. You can πŸ“ edit and

This is a simple app to help get or set your Slack status from the command line.

Slack Status This is a simple app to help get or set your Slack status from the command line. The app is a Spring Boot app written in Kotlin. It uses

πŸ“± Android Library to implement Rich, Beautiful, Stylish 😍 Material Navigation View for your project with Material Design Guidelines. Easy to use.
πŸ“± Android Library to implement Rich, Beautiful, Stylish 😍 Material Navigation View for your project with Material Design Guidelines. Easy to use.

Material NavigationView for Android πŸ“± πŸ“± Android Library to implement Rich, Beautiful Material Navigation View for your project with Material Design

The easy way to use biometric authentication in your Flutter app. Supports Fingerprint, FaceID and Iris.
The easy way to use biometric authentication in your Flutter app. Supports Fingerprint, FaceID and Iris.

BiometricX The easy way to use biometric authentication in your Flutter app. Supports Fingerprint, FaceID and Iris. Demo APK. Starting $ flutter pub a

Find your ideal fitness partners according to your preferences and interact with them whenever you want! All this with no hassle, because there's FitMate! Take timed challenges updated daily, read blogs related to health, and be a part of numerous communities too! During covid times, partner with your FitMate to achieve your fitness goals at home. Wallpaper and ringtone Application which allows user to set and download Wallpaper or ringtone
Wallpaper and ringtone Application which allows user to set and download Wallpaper or ringtone

Wallpaper Wallpaper is a Wallpaper and ringtone Application which allows user to

Wallpaper is a Wallpaper and ringtone Application which allows user to set and download Wallpaper or ringtone.
Wallpaper is a Wallpaper and ringtone Application which allows user to set and download Wallpaper or ringtone.

Wallpaper Wallpaper is a Wallpaper and ringtone Application which allows user to set and download Wallpaper or ringtone. Account Activity Home Fragmen

See a pretty error screen when your Android app crashes
See a pretty error screen when your Android app crashes

WhatTheStack WhatTheStack is a library to make your debugging experience on Android better. It shows you a pretty error screen when your Android App c

An Android mobile app for viewing device screen in your web browser
An Android mobile app for viewing device screen in your web browser

Screen Stream over HTTP An Android mobile app for viewing device screen in your web browser. Developed by Dmitriy Krivoruchko Β· If there are any issue

Releases(1.0.1)
  • 1.0.1(May 10, 2020)

    Patch update of the library

    • Cleaned up the codes
    • Added animation creator method, so no need to take hassle to create single animation file with 4 lines of code
    • Instructions added how to use the library in java or in the project that using both java and kotlin
    • Readme.md file updated
    Source code(tar.gz)
    Source code(zip)
  • 1.0.0(Apr 13, 2020)

    Alpha Release

    Alpha release of Starter Animation for android application. Feel free to suggest. Thank you

    Features

    • Create an Starter/Splash animation with any animation
    • Can able to use multiple animation files on a single view.
    • Easy implementation for any activity and fragment

    Implementation

    • Step-1: Add the JitPack repository to your build file
    allprojects {
    		repositories {
    			...
    			maven { url 'https://jitpack.io' }
    		}
    	}
    
    • Step-2: Add the dependency
    dependencies {
    	        implementation "com.github.sam43:SplashApplication:$latest_version"
    	}
    

    where last release version is the letest_version.

    • Step-3: Create list of animations to be applied to We will be creating a list of animation like below and pass it to the library with the view, on which the animation will be applied. List of animation method, will be something like this :-
    private fun getAnimList(): ArrayList<Animation> {
              // create list of animations
             val animList: ArrayList<Animation> = ArrayList()
             val anim = AnimationUtils.loadAnimation(
                applicationContext,
                R.anim.no_animaiton
             )
             val anim1 = AnimationUtils.loadAnimation(
                applicationContext,
                R.anim.rotate
             )
                .
                .
                .
                
            animList.add(anim)
            animList.add(anim1)
                .
                .
                .
    
            return animList
        }
    
    • Step-4: Use the animation list for the library Finally, We will be passing the list and implement the listener provided which will notify the application when animations have ended. The implementation will be like below:-
                resList = getAnimList(),
                onAnimationListener = object : OnAnimationListener {
                    override fun onRepeat() {}
    
                    override fun onEnd() {
                        // TODO: Do what you want to do after end of animations
                    }
    
                    override fun onStartAnim() {}
                }
            ).startSequentialAnimation(view = imageView)
    

    Well, That's all. Please let me know if you guys have any suggestions. Any suggestion will be appreciated. Thanks

    Source code(tar.gz)
    Source code(zip)
Owner
A S M Sayem
I don't know as well... Let's find out... :D
A S M Sayem
A Simple Splash Screen For Kotlin

SolarSystem I have Completed the TASK-1: Made the splash screen TASK-2: Made a b

Vedant Taak 0 Dec 22, 2021
HyperUPnP is Android Application that lets you to Stream Media from PC, NAS or any other device running UPnP/DLNA compliant media server to your Android Device.

Hyper UPnP Android UPnP/DLNA client Stream Media from PC, NAS or any other device running UPnP/DLNA compliant media server to your Android Device. Int

Var Bhat 8 Jul 17, 2022
Proof of concept of custom widgets and apps running on the Z Flip3 cover screen. Adds a widget to Z Flip3 cover screen that lets you launch a web browser-like app on the cover.

SubUI-browser Proof of concept of custom widgets and apps running on the Z Flip3 cover screen. Adds a widget to Z Flip3 cover screen that lets you lau

null 35 Dec 24, 2022
The Sleep tracker app for lesson 6 of the Udacity: Developing Android Apps with Kotlin Course

App Architecture-Presistence This is the Sleep tracker app for lesson 6 of the U

null 0 Dec 28, 2021
AboutMe - From Udacity course Developing Android Apps with Kotlin

AboutMe App From Udacity course "Developing Android Apps with Kotlin".

Anas Tariq 1 Feb 11, 2022
A work-in-progress quiz app I started developing for a client but got paused.

quiz-app A work-in-progress quiz app I started developing for a client but got paused. Background This app was intended to be a trivia app where users

Ahmet Safa Orhan 7 Oct 18, 2022
FairEmail is easy to set up and works with virtually all email providers, including Gmail, Outlook and Yahoo!

Downloads β€’ Privacy β€’ Support β€’ License FairEmail Fully featured, open source, privacy oriented email app for Android FairEmail is easy to set up and

Marcel Bokhorst 1.5k Jan 2, 2023
An easy, cross-platform method of keeping track of other people's timezones

TimezoneDB TimezoneDB is an easy, cross-platform method of keeping track of others' timezones. This project is inspired by PronounDB, and we'd like to

Synapse Technologies, LLC 13 Nov 16, 2022
Dev Experience is a set of projects to make life easier for developers, in order to import, configure and use.

Dev Experience The experience that all developer need Dev Experience is a set of projects to make life easier for developers, in order to import, conf

Wagner Fernando Costa 3 Aug 31, 2022
A beautiful app showing the use of a single recyclerview to display multiple views with motion layout and clean architecture

This app shows how to use a single recyclerview to build a beautiful multiple view layout (See image below) using clean architectural pattern

Ibrajix 62 Dec 26, 2022