Thirty-one different easing animation interpolators for Android.

Overview

EasingInterpolator

Platform API Android Arsenal

Thirty-one different easing animation interpolators for Android.
It does not use the standard 4 param ease signature. Instead it uses a single param which indicates the current linear ratio (0 to 1) of the tween.

Gradle

Add the dependency to your build.gradle.

dependencies {
    implementation 'com.daasuu:EasingInterpolator:1.3.0'
}

Usage

    ValueAnimator valueAnimator = new ValueAnimator();
    valueAnimator.setInterpolator(new EasingInterpolator(Ease.CUBIC_IN));
    valueAnimator.start();

    ObjectAnimator animator = ObjectAnimator.ofFloat(view, "translationY", 0, 300);
    animator.setInterpolator(new EasingInterpolator(Ease.ELASTIC_IN_OUT)));
    animator.start();

Easing Graphs

ProGuard

-keep class com.daasuu.** { *; }

License

Copyright 2015 MasayukiSuda

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Comments
  • Fixed base interpolator to  android.view.animation.Interpolator  instead of TimeInterpolator to support apis which accepts an Interpolator, eg. OverScroller.

    Fixed base interpolator to android.view.animation.Interpolator instead of TimeInterpolator to support apis which accepts an Interpolator, eg. OverScroller.

    TimeInterpolator was introduced in API 11 which restricts EasingInterpolator to be used only with new APIs, so changed TimeInterpolator to android.view.animation.Interpolator in order to allow using EasingInterpolator with APIs which needs an instace of Interpolator instead of TimeInterpolator.

    opened by pyus13 2
  • EasingInterpolator 1.1.0 depends on alpha version of appcompat

    EasingInterpolator 1.1.0 depends on alpha version of appcompat

    I don't think you should depend on alpha versions in regular releases.

    https://github.com/MasayukiSuda/EasingInterpolator/blob/05f220e1591d3c46d3c29e170dbca1c1ed20d749/ei/build.gradle#L27

    opened by jurriaan 1
  • Use Interpolator in a xml file

    Use Interpolator in a xml file

    This is supposed to be my animation in the xml

    <?xml version="1.0" encoding="utf-8"?>
    <alpha xmlns:android="http://schemas.android.com/apk/res/android"
       android:interpolator="@android:anim/accelerate_interpolator"
       android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="100" />
    

    Now i can't do it programmatically as i'm animating this popupWindow.setAnimationStyle(R.style.popup_window_animation_phone); And the file has to be in the style resource. So can you help me setting the Interpolator for this animation in xml?

    opened by Daksh14 1
  • Androidmanifest.xml

    Androidmanifest.xml

    Error:.../src/main/AndroidManifest.xml:30:9-36 Error: Attribute application@allowBackup value=(false) from AndroidManifest.xml:30:9-36 is also present at [com.daasuu:EasingInterpolator:1.0.0] AndroidManifest.xml:12:9-35 value=(true). Suggestion: add 'tools:replace="android:allowBackup"' to element at AndroidManifest.xml:28:5-276:19 to override. FAILURE: Build failed with an exception.

    • What went wrong: Execution failed for task ':presentation:processDebugManifest'.

      Manifest merger failed : Attribute application@allowBackup value=(false) from AndroidManifest.xml:30:9-36 is also present at [com.daasuu:EasingInterpolator:1.0.0] AndroidManifest.xml:12:9-35 value=(true). Suggestion: add 'tools:replace="android:allowBackup"' to element at AndroidManifest.xml:28:5-276:19 to override.

    • Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

    opened by kjsolo 1
  • Add Expo ease animations

    Add Expo ease animations

    I compared your animations with the following css animations http://easings.net/es

    Differences that I found , if you want to add in a future update:

    • easeInExpo
    • easeOutExpo
    • aseInOutExpo
    opened by webserveis 1
  • NullPointerException: Attempt to get length of null array

    NullPointerException: Attempt to get length of null array

    i got this error :NullPointerException: Attempt to get length of null array in line : ValueAnimator valueAnimator = new ValueAnimator(); valueAnimator.setInterpolator(new EasingInterpolator(Ease.CUBIC_IN)); valueAnimator.start();

    opened by RabieMohimane 0
Releases(v1.3.2)
Owner
Masayuki Suda
Masayuki Suda
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

MindInventory 33 Sep 9, 2022
A sample implementation Compose BottomSheet with animation different states

Compose Animated BottomSheet A sample implementation Compose BottomSheet with animation different states Medium post: https://proandroiddev.com/how-to

Yahor 40 Jan 6, 2023
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

Swapnil Tiwari 107 Nov 16, 2022
🌠 Transform into a different view or activity using morphing animations.

TransformationLayout ?? Transform into a different view or activity using morphing animations. Using Transformation motions of new material version. D

Jaewoong Eum 2k Jan 3, 2023
Location tracking & geofencing the easy way. Supports background, killed app, rebooted device different update intervals.

Geofencer Convience library to receive user location updates and geofence events with minimal effort. Features: supports Android-Q receive updates on

null 85 Dec 15, 2022
Android library to display a few images in one ImageView like avatar of group chat. Made by Stfalcon

MultiImageView Library for display a few images in one MultiImageView like avatar of group chat Who we are Need iOS and Android apps, MVP development

Stfalcon LLC 468 Dec 9, 2022
Postman is a reactive One-tap SMS verification library. This library allows the usage of RxJava with The SMS User Consent API

What is Postman? Postman is a reactive One-tap SMS verification library. This library allows the usage of RxJava with The SMS User Consent API Usage P

Cafer Mert Ceyhan 129 Dec 24, 2022
A component for flip animation on Android, which is similar to the effect in Flipboard iPhone/Android

android-flip Aphid FlipView is a UI component to accomplish the flipping animation like Flipboard does. A pre-built demo APK file for Android OS 2.2+

Bo 2.8k Dec 21, 2022
Deprecated in favour of https://developer.android.com/reference/android/support/v4/view/animation/PathInterpolatorCompat.html

Deprecated: use https://developer.android.com/reference/android/support/v4/view/animation/PathInterpolatorCompat.html instead. android-cubic-bezier-in

Codesoup 161 Jan 1, 2023
[] Android library for using the Honeycomb animation API on all versions of the platform back to 1.0!

DEPRECATED NineOldAndroids is deprecated. No new development will be taking place. Existing versions will (of course) continue to function. New applic

Jake Wharton 4.5k Jan 9, 2023
DuGuang 1k Dec 14, 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
Android library to control Transition animates. A simple way to create a interactive animation.

TransitionPlayer Android library to control Transition animates. A simple way to create a interactive animation. Demo1 SimpleTransition Code: ....

林法鑫 1.2k Dec 17, 2022
Collect android animation

Interactive-animation 描述:收集android上开源的酷炫的交互动画和视觉效果。 1.交互篇 2.视觉篇 交互篇 1.SlidingUpPanelLayout 项目介绍:他的库提供了一种简单的方式来添加一个可拖动滑动面板(由谷歌音乐推广,谷歌地图和Rdio)你的Android应

Ra 749 Dec 14, 2022
Road Runner is a library for android which allow you to make your own loading animation using a SVG image

Road Runner Road Runner is a library for android which allow you to make your own loading animation using a SVG image Sample video View in Youtube Dem

Adrián Lomas 1.2k Nov 18, 2022
With MVVM Architecture pattern using Android Architecture Components This is a sample app demonstrating Youtube player animation using constraint layout

Youtube UI/UX Animation This is a sample app demonstrating Youtube UX/UI animation using ConstraintLayout.It implements the Keyframe Animation feature

Burhanuddin Rashid 866 Dec 29, 2022
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

Masayuki Suda 756 Dec 30, 2022
Android library to make notes drop animation for music players

VusikView Min SDK 11 Screnshots How to use If you want use this library, you can download project and import it into your workspace and add the projec

Chetan Kaushik 119 Nov 29, 2022
An simple & awesome animation library written in Kotlin for Android

An simple & awesome animation library written in Kotlin for Android

Romman Sabbir 53 Oct 17, 2022