Sophisticated and cool intro with Material Motion Animation

Overview

Material Intro


Sophisticated and cool intro with Material Motion Animation.


Google

License Profile



Who's using Material Intro?

👉 Check out who's using Material Intro

Include in your project

Maven Central

Gradle

Add the dependency below to your module's build.gradle file:

dependencies {
    implementation("io.github.androidpoet:materialintro:1.0.2")
}

SetUp for Views

///create object for MaterialIntroView var materialIntroView: MaterialIntroView materialIntroView = findViewById(R.id.materialintroView) //add views into list list.add(R.layout.layout_one) list.add(R.layout.layout_two) list.add(R.layout.layout_three) //set list of views materialIntroView.setViewsList(list = list) // go next view with animation next.setOnClickListener { materialIntroView.next(addMaterialFade()) //it supports three animation patterns addMaterialFade(),addFade(),addSharedAxis(MaterialSharedAxis.X,true) } // go previous view with animation prev.setOnClickListener { materialIntroView.previous(addMaterialFade()) //it supports three animation patterns addMaterialFade(),addFade(),addSharedAxis(MaterialSharedAxis.X,true) } // interface for the observing current index materialIntroView.setEventListener(object : IndexEventListener { override fun onIndexChanged(index: Int) { next.isEnabled = index < list.size - 1 prev.isEnabled = index > 0 tabLayout.apply { selectTab(getTabAt(index)) } } }) ">
   <com.androidpoet.materialintro.MaterialIntroView
        android:id="@+id/materialintroView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </com.androidpoet.materialintro.MaterialIntroView>
	
	///create object for MaterialIntroView
	var materialIntroView: MaterialIntroView
	 materialIntroView = findViewById(R.id.materialintroView)
	//add views into list
   list.add(R.layout.layout_one)
    list.add(R.layout.layout_two)
    list.add(R.layout.layout_three)

    //set list of views
    materialIntroView.setViewsList(list = list)
	
	
   //  go next view with animation
    next.setOnClickListener {
      materialIntroView.next(addMaterialFade())
    //it supports three animation patterns addMaterialFade(),addFade(),addSharedAxis(MaterialSharedAxis.X,true)
	}

    //  go previous view with animation
    prev.setOnClickListener {
      materialIntroView.previous(addMaterialFade())
    //it supports three animation patterns addMaterialFade(),addFade(),addSharedAxis(MaterialSharedAxis.X,true)
    }	
	
  // interface for the observing current index 	
 materialIntroView.setEventListener(object : IndexEventListener {
      override fun onIndexChanged(index: Int) {
        next.isEnabled = index < list.size - 1
        prev.isEnabled = index > 0
        tabLayout.apply {
          selectTab(getTabAt(index))
        }
      }
    })	
	
	
	
	
	

SetUp for Fragment

///create object for MaterialIntroView var materialIntroView: MaterialIntroView materialIntroView = findViewById(R.id.materialintroView) list.add(FragmentOne()) list.add(FragmentTwo()) list.add(FragmentThree()) // /set list of views materialIntroView.setFragmentsList(list = list) // go next view with animation next.setOnClickListener { materialIntroView.next(Animation.MaterialFade) } // go previous view with animation prev.setOnClickListener { materialIntroView.previous(Animation.MaterialFade) } // interface for the observing current index materialIntroView.setEventListener(object : MaterialIntroFragment.IndexEventListener { override fun onIndexChanged(index: Int) { next.isEnabled = index < list.size - 1 prev.isEnabled = index > 0 tabLayout.apply { selectTab(getTabAt(index)) } } }) ">
    <com.androidpoet.materialintro.MaterialIntroFragment
        android:id="@+id/materialintroView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </com.androidpoet.materialintro.MaterialIntroFragment>

	
	///create object for MaterialIntroView
	var materialIntroView: MaterialIntroView
	 materialIntroView = findViewById(R.id.materialintroView)
	
	
    list.add(FragmentOne())
    list.add(FragmentTwo())
    list.add(FragmentThree())


    // /set list of views
    materialIntroView.setFragmentsList(list = list)
	
	
 //  go next view with animation
    next.setOnClickListener {
      materialIntroView.next(Animation.MaterialFade)
    }

    //  go previous view with animation
    prev.setOnClickListener {
      materialIntroView.previous(Animation.MaterialFade)
    }	
	
    // interface for the observing current index 	
    materialIntroView.setEventListener(object : MaterialIntroFragment.IndexEventListener {
      override fun onIndexChanged(index: Int) {
        next.isEnabled = index < list.size - 1
        prev.isEnabled = index > 0
        tabLayout.apply {
          selectTab(getTabAt(index))
        }
      }
    })
	
	
	
	
	

MaterialFade


Fade


SharedAxis


Card icons created by Freepik - Flaticon

Find this library useful? ❤️

Support it by joining stargazers for this repository.

License

Copyright 2022 AndroidPoet (Ranbir Singh)

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...
FPSAnimator is very easy animation library for Android TextureView and SurfaceView.
FPSAnimator is very easy animation library for Android TextureView and SurfaceView.

FPSAnimator A simple but powerful Tween / SpriteSheet / ParabolicMotion / animation library for Android TextureView and SurfaceView. Features The cont

User onboarding library with smooth animation of objects and background colors
User onboarding library with smooth animation of objects and background colors

SlidingTutorial Cleveroad introduces Sliding Tutorial Library for Flutter Hey guys, hope you haven’t started developing a tutorial for your Flutter ap

A customised EditText view serving the purpose of taking numeric One Time Password from a user. With stunning animation, and high customizability.
A customised EditText view serving the purpose of taking numeric One Time Password from a user. With stunning animation, and high customizability.

PassCodeText A customised EditText view serving the purpose of taking numeric One Time Password from a user. With stunning animation, and high customi

ActSwitchAnimTool make the Animation easy to implements, and it compat the version of Android 4.0 or above.
ActSwitchAnimTool make the Animation easy to implements, and it compat the version of Android 4.0 or above.

ActSwitchAnimTool As well as we know, Android 5.0 has been support more Animation(just like ViewAnimationUtils~). Maybe some developers can implements

This library provides easy ways to add onboarding or pager screens with different animation and indicators.
This library provides easy ways to add onboarding or pager screens with different animation and indicators.

WalkThroughAndroid Make amazing OnBoarding Screens easily for your app with different colorful animations, fonts, styles, and many more. Customize you

create your custom themes and change them dynamically with ripple animation
create your custom themes and change them dynamically with ripple animation

Android Animated Theme Manager create your custom themes and change them dynamically with ripple animation Features support java and kotlin projects.

FadingToolbar is an animation library which fades out your footer view in a ScrollView/RecyclerView and fades in a toolbar title
FadingToolbar is an animation library which fades out your footer view in a ScrollView/RecyclerView and fades in a toolbar title

FadingToolbar is an animation library which fades out your footer view in a ScrollView/RecyclerView and fades in a toolbar title (analogue of the LargeTitle animation in iOS)

💳 Bank Card View is a simple and elegant card view with Flip animation.
💳 Bank Card View is a simple and elegant card view with Flip animation.

Visualização de cartão bancário 💳 Bank Card View é uma visualização de cartão simples e elegante com animação Flip. Versões Selecione a língua : Engl

💳 Bank Card View is a simple and elegant card view with Flip animation.
💳 Bank Card View is a simple and elegant card view with Flip animation.

Visualização de cartão bancário 💳 Bank Card View é uma visualização de cartão simples e elegante com animação Flip. Versões Selecione a língua : Engl

Releases(1.0.7)
Owner
Ranbir Singh
Android Poet, I love perfect MVVM Architecture and MaterialYou design language:(not all programmers love coffee)
Ranbir Singh
Chandrasekar Kuppusamy 799 Nov 14, 2022
Animation samples with motion layout and object animator 🦹🏻‍♀️

?? Animations ?? Animation samples with motion layout and object animator ????‍♀️ Car Animation with Object Animator ?? ?? I've created this project b

Yağmur Erdoğan 25 Dec 28, 2022
A motion-driven animation framework for Android.

Backboard A motion-driven animation framework for Android. backboard is a framework on top of rebound that makes it easier to use by coupling it to vi

Tumblr 1.7k Dec 30, 2022
💠Metaphor is the library to easily add Material Motion animations

Metaphor Metaphor is the library to easily add Material Motion animations. Who's using Metaphor? ?? Check out who's using Metaphor Include in your pro

Ranbir Singh 132 Dec 25, 2022
It's a cool animation which can use in splash or somewhere else.

What's Particle ? It's a cool animation which can use in splash or anywhere else. Demo Article 手摸手教你用Canvas实现简单粒子动画 Attributes name format description

巴掌 1.4k Dec 12, 2022
How to apply meaningful and delightful motion in a sample Android app

Applying meaningful motion on Android How to apply meaningful and delightful motion in a sample Android app Read the complete post at https://medium.c

André Mion 166 Nov 12, 2022
An application demoing meaningful motion on Android

Animate You'll find the supporting medium article for this project here! Animate is a simple application I quickly put together to demo meaningful mot

Joe Birch 3.1k Dec 30, 2022
Android Animation Easing Functions. Let's make animation more real!

Android Easing Functions This project is originally from my another project, AndroidViewAnimation, which is an animation collection, to help you make

代码家 2.5k Jan 4, 2023
Lightweight Android library for cool activity transition animations

Bungee min SDK 16 (Android Jellybean 4.1) written in Java A lightweight, easy-to-use Android library that provides awesome activity transition animati

Dean Spencer 172 Nov 18, 2022
Material Design text field that comes in a box, based on (OLD) Google Material Design guidelines.

TextFieldBoxes A new Material Design text field that comes in a box, based on Google Material Design guidelines. ???? 中文看这里 UPDATE NOTICE 1.4.5 Releas

Mark Wang 769 Jan 7, 2023