diff --git a/.travis.yml b/.travis.yml
index a39602f..797c2f4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,66 +1,12 @@
-language: java
-
-branches:
- only:
- - dev
- - master
-
-jdk: oraclejdk7
-
-env:
- global:
- - ANDROID_SDK_VERSION="r22.6.2"
-
-notifications:
- email: false
-
-
-before_install:
-
- # environment info
- - gradle -v
- - uname -a
-
- # required libs for android build tools
- # Update a system for ia32 libraries
- - sudo apt-get update -qq
- - if [ `uname -m` = x86_64 ]; then sudo apt-get update; fi
- - if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch; fi
-
- # for gradle output style
- - export TERM=dumb
-
- # newer version of gradle
- # - wget http://services.gradle.org/distributions/gradle-1.12-bin.zip
- # - unzip -qq gradle-1.12-bin.zip
- # - export GRADLE_HOME=$PWD/gradle-1.11
- # - export PATH=$GRADLE_HOME/bin:$PATH
-
- # just to test gradle version, against our provided one
- - gradle -v
-
- # newest android SDK
- - wget http://dl.google.com/android/android-sdk_${ANDROID_SDK_VERSION}-linux.tgz
- - tar -zxf android-sdk_${ANDROID_SDK_VERSION}-linux.tgz
- - export ANDROID_HOME=`pwd`/android-sdk-linux
- - export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
-
- # manually set sdk.dir variable, according to local paths
- - echo "sdk.dir=$ANDROID_HOME" > local.properties
-
- # Install required components.
- # For a full list, run `android list sdk -a --extended`
- - echo yes | android update sdk --filter platform-tools --no-ui --force > /dev/null
- - echo yes | android update sdk --all --filter build-tools-19.1.0 --no-ui --force > /dev/null
- - echo yes | android update sdk --filter android-19 --no-ui --force > /dev/null
- - echo yes | android update sdk --filter extra-android-support --no-ui --force > /dev/null
- - echo yes | android update sdk --filter extra-android-m2repository --no-ui --force > /dev/null
-
- # Otherwise
- #- echo yes | android update sdk -t tools,platform-tools,extra-android-support,extra-android-m2repository,android-19 --force --no-ui
-
-
-# Let's try to build...
-install: ./gradlew clean build
-
-script: gradle check
\ No newline at end of file
+language: android
+android:
+ components:
+ - tools
+ - platform-tools
+ - build-tools-25.0.2
+ - android-25
+ - extra-android-support
+ - extra
+ - extra-android-m2repository
+script:
+ - ./gradlew assembleDebug
\ No newline at end of file
diff --git a/README.md b/README.md
index e164936..ebd5174 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Android View Animations [![Build Status](https://travis-ci.org/daimajia/AndroidViewAnimations.svg)](https://travis-ci.org/daimajia/AndroidAnimations)
+# Android View Animations [![Build Status](https://travis-ci.org/daimajia/AndroidViewAnimations.svg)](https://travis-ci.org/daimajia/AndroidViewAnimations)
One day, I saw [an iOS library](https://github.com/ArtFeel/AFViewShaker), which is a view shaker, it's very beautiful. I think Android also need one, and should be better.
@@ -6,32 +6,30 @@ So, I started to collect animation effects... and in two days, this project born
# Demo
-![](http://ww3.sinaimg.cn/mw690/610dc034jw1ehnv2r93jpg20bx0kokjl.gif)
+![](http://ww3.sinaimg.cn/mw690/610dc034gw1ej75mi2w77g20c30jb4qr.gif)
-[Download Demo](https://github.com/daimajia/AndroidViewAnimations/releases/download/v1.0.0/Demo-v1.0.0.apk)
+[Download Demo](https://github.com/daimajia/AndroidViewAnimations/releases/download/v1.1.2/AndroidViewAnimations-1.1.2.apk)
# Usage
+> Since Version 2.0, NineOldAndroids has been removed. Thanks Jake Wharton.
+
+For making animations more real, I created another project named [Android Easing Functions](https://github.com/daimajia/AnimationEasingFunctions) which is an implementations of [easing functions](http://easings.net/) on Android. So, we need to dependent that project.
+
## Step 1
+#### Gradle
```groovy
dependencies {
- compile 'com.nineoldandroids:library:2.4.0'
- compile 'com.daimajia.androidanimations:library:1.0.4@aar'
+ implementation 'com.daimajia.androidanimations:library:2.4@aar'
}
```
-or Maven
+#### Maven
```xml
-
- com.nineoldandroids
- library
- 2.4.0
-com.daimajia.androidanimationlibrary
- 1.0.4
- apklib
+ 2.4
```
@@ -42,6 +40,7 @@ Just like play Yo-yo.
```java
YoYo.with(Techniques.Tada)
.duration(700)
+ .repeat(5)
.playOn(findViewById(R.id.edit_area));
```
@@ -50,7 +49,7 @@ YoYo.with(Techniques.Tada)
`Flash`, `Pulse`, `RubberBand`, `Shake`, `Swing`, `Wobble`, `Bounce`, `Tada`, `StandUp`, `Wave`
#### Special
-`Hinge`, `RollIn`, `RollOut`
+`Hinge`, `RollIn`, `RollOut`,`Landing`,`TakingOff`,`DropOut`
#### Bounce
`BounceIn`, `BounceInDown`, `BounceInLeft`, `BounceInRight`, `BounceInUp`
@@ -80,14 +79,24 @@ YoYo.with(Techniques.Tada)
Welcome contribute your amazing animation effect. :-D
-#Thanks
+# Thanks
- [AFViewShaker](https://github.com/ArtFeel/AFViewShaker)
- [Animate.css](https://github.com/daneden/animate.css)
-#About me
+# Why YoYo?
-A student in mainland China.
+YoYo is a [toy](https://en.wikipedia.org/wiki/Yo-yo), with a lot of [Techniques](./library/src/main/java/com/daimajia/androidanimations/library/Techniques.java).
+
+# About me
+
+(2013)
+A student in mainland China.
Welcome to [offer me an internship](mailto:daimajia@gmail.com).
If you have any new idea about this project, feel free to [contact me](mailto:daimajia@gmail.com).
+
+(2019)
+Five years later, now I become an investment associate in China.
+
+Welcome to send your business plan to [me](mailto:daimajia@gmail.com). Maybe I would have a better understanding on your startup project than others. Trust me.
diff --git a/build.gradle b/build.gradle
index 881b632..6441fdb 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,19 +1,17 @@
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
buildscript {
repositories {
- mavenCentral()
+ jcenter()
+ google()
}
+
dependencies {
- classpath 'com.android.tools.build:gradle:0.11.+'
- classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.10.+'
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
+ classpath 'com.android.tools.build:gradle:4.0.1'
}
}
allprojects {
repositories {
- mavenCentral()
+ jcenter()
+ google()
}
}
diff --git a/demo/build.gradle b/demo/build.gradle
index 56bd973..6497514 100644
--- a/demo/build.gradle
+++ b/demo/build.gradle
@@ -1,27 +1,28 @@
-apply plugin: 'android-sdk-manager'
-apply plugin: 'android'
+apply plugin: 'com.android.application'
android {
- compileSdkVersion 19
- buildToolsVersion "19.1.0"
+ compileSdkVersion COMPILE_SDK_VERSION.toInteger()
defaultConfig {
- applicationId "com.daimajia.androidanimations"
- minSdkVersion 8
- targetSdkVersion 19
- versionCode 1
- versionName "1.0"
+ applicationId GROUP
+ minSdkVersion MIN_SDK_VERSION.toInteger()
+ targetSdkVersion TARGET_SDK_VERSION.toInteger()
+ versionCode VERSION_CODE.toInteger()
+ versionName VERSION_NAME
}
+
buildTypes {
release {
- runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
+
+ lintOptions{
+ abortOnError false
+ }
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- compile 'com.nineoldandroids:library:2.4.0'
- compile project(':library')
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation project(':library')
}
diff --git a/demo/src/main/java/com/daimajia/androidanimations/EffectAdapter.java b/demo/src/main/java/com/daimajia/androidanimations/EffectAdapter.java
index 35d5001..a204830 100644
--- a/demo/src/main/java/com/daimajia/androidanimations/EffectAdapter.java
+++ b/demo/src/main/java/com/daimajia/androidanimations/EffectAdapter.java
@@ -40,7 +40,7 @@ public View getView(final int position, View convertView, ViewGroup parent) {
int start = o.getClass().getName().lastIndexOf(".") + 1;
String name = o.getClass().getName().substring(start);
t.setText(name);
- v.setTag(o);
+ v.setTag(Techniques.values()[position]);
return v;
}
}
diff --git a/demo/src/main/java/com/daimajia/androidanimations/MyActivity.java b/demo/src/main/java/com/daimajia/androidanimations/MyActivity.java
index 963288a..e045984 100644
--- a/demo/src/main/java/com/daimajia/androidanimations/MyActivity.java
+++ b/demo/src/main/java/com/daimajia/androidanimations/MyActivity.java
@@ -1,39 +1,88 @@
package com.daimajia.androidanimations;
+import android.animation.Animator;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
-import android.view.animation.AccelerateInterpolator;
+import android.view.animation.AccelerateDecelerateInterpolator;
import android.widget.AdapterView;
import android.widget.ListView;
+import android.widget.Toast;
-import com.daimajia.androidanimations.library.BaseViewAnimator;
+import com.daimajia.androidanimations.library.Techniques;
+import com.daimajia.androidanimations.library.YoYo;
public class MyActivity extends Activity {
private ListView mListView;
private EffectAdapter mAdapter;
private View mTarget;
+ private YoYo.YoYoString rope;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
- mListView = (ListView)findViewById(R.id.list_items);
+
+ mListView = (ListView) findViewById(R.id.list_items);
mTarget = findViewById(R.id.hello_world);
+
mAdapter = new EffectAdapter(this);
mListView.setAdapter(mAdapter);
+
mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView> parent, View view, int position, long id) {
- ((BaseViewAnimator) (view.getTag())).setDuration(800)
- .setInterpolator(new AccelerateInterpolator())
- .animate(mTarget);
+ if (rope != null) {
+ rope.stop(true);
+ }
+ Techniques technique = (Techniques) view.getTag();
+ rope = YoYo.with(technique)
+ .duration(1200)
+ .repeat(YoYo.INFINITE)
+ .pivot(YoYo.CENTER_PIVOT, YoYo.CENTER_PIVOT)
+ .interpolate(new AccelerateDecelerateInterpolator())
+ .withListener(new Animator.AnimatorListener() {
+ @Override
+ public void onAnimationStart(Animator animation) {
+
+ }
+
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ }
+
+ @Override
+ public void onAnimationCancel(Animator animation) {
+ Toast.makeText(MyActivity.this, "canceled previous animation", Toast.LENGTH_SHORT).show();
+ }
+
+ @Override
+ public void onAnimationRepeat(Animator animation) {
+
+ }
+ })
+ .playOn(mTarget);
}
});
+ findViewById(R.id.hello_world).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (rope != null) {
+ rope.stop(true);
+ }
+ }
+ });
+ }
+
+ @Override
+ public void onWindowFocusChanged(boolean hasFocus) {
+ if (hasFocus) {
+ rope = YoYo.with(Techniques.FadeIn).duration(1000).playOn(mTarget);// after start,just click mTarget view, rope is not init
+ }
}
@@ -51,7 +100,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
- startActivity(new Intent(this,ExampleActivity.class));
+ startActivity(new Intent(this, ExampleActivity.class));
return true;
}
return super.onOptionsItemSelected(item);
diff --git a/demo/src/main/res/layout/activity_my.xml b/demo/src/main/res/layout/activity_my.xml
index 2e755fe..5403f25 100644
--- a/demo/src/main/res/layout/activity_my.xml
+++ b/demo/src/main/res/layout/activity_my.xml
@@ -1,3 +1,4 @@
+
+
+
-
+
\ No newline at end of file
diff --git a/demo/src/main/res/layout/example.xml b/demo/src/main/res/layout/example.xml
index 85e51d3..b9f4877 100644
--- a/demo/src/main/res/layout/example.xml
+++ b/demo/src/main/res/layout/example.xml
@@ -1,67 +1,79 @@
-
-
-
-
+
+
-
+ android:layout_height="wrap_content">
-
-
-
+
+
+
+
+
-
+ android:layout_height="wrap_content">
-
-
-
+
+
+
+
+
+ android:layout_height="wrap_content">
+
+
+
+
-
-
+ android:layout_height="wrap_content">
+
+
+
+
-
\ No newline at end of file
+
diff --git a/gradle.properties b/gradle.properties
index d2865e5..b0d07ef 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -17,9 +17,12 @@
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
+COMPILE_SDK_VERSION=29
+TARGET_SDK_VERSION=29
+MIN_SDK_VERSION=14
-VERSION_NAME=1.0.5
-VERSION_CODE=6
+VERSION_NAME=2.4
+VERSION_CODE=32
GROUP=com.daimajia.androidanimations
POM_DESCRIPTION=Collect android animations
@@ -31,4 +34,7 @@ POM_LICENCE_NAME=MIT
POM_LICENCE_URL=http://opensource.org/licenses/MIT
POM_LICENCE_DIST=repo
POM_DEVELOPER_ID=daimajia
-POM_DEVELOPER_NAME=daimajia
\ No newline at end of file
+POM_DEVELOPER_NAME=daimajia
+
+android.useAndroidX=true
+android.enableJetifier=true
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index 8c0fb64..085a1cd 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 5de946b..8d003d6 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Apr 10 15:27:10 PDT 2013
+#Sat Aug 22 18:15:38 CST 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
diff --git a/library/build.gradle b/library/build.gradle
index 708ea1b..fa14f2c 100644
--- a/library/build.gradle
+++ b/library/build.gradle
@@ -1,26 +1,27 @@
-apply plugin: 'android-library'
+apply plugin: 'com.android.library'
android {
- compileSdkVersion 19
- buildToolsVersion "19.1.0"
+ compileSdkVersion COMPILE_SDK_VERSION.toInteger()
defaultConfig {
- applicationId "com.daimajia.androidanimations.library"
- minSdkVersion 8
- targetSdkVersion 19
- versionCode 6
- versionName "1.0.5"
+ minSdkVersion MIN_SDK_VERSION.toInteger()
+ targetSdkVersion TARGET_SDK_VERSION.toInteger()
+ versionCode VERSION_CODE.toInteger()
+ versionName VERSION_NAME
}
+
buildTypes {
release {
- runProguard false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ minifyEnabled false
+ consumerProguardFiles 'proguard-rules.pro'
}
}
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- compile 'com.nineoldandroids:library:2.4.0'
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation 'com.daimajia.easing:library:2.4@aar'
+ implementation 'androidx.core:core:1.3.1'
}
-apply from: './gradle-mvn-push.gradle'
\ No newline at end of file
+
+apply from: './gradle-mvn-push.gradle'
diff --git a/library/gradle-mvn-push.gradle b/library/gradle-mvn-push.gradle
index c8d594a..77ac81f 100644
--- a/library/gradle-mvn-push.gradle
+++ b/library/gradle-mvn-push.gradle
@@ -105,11 +105,11 @@ afterEvaluate { project ->
}
task jar(type: Jar) {
- from android.sourceSets.main.java
+ from android.sourceSets.main.java.srcDirs
}
task androidJavadocs(type: Javadoc) {
- source = android.sourceSets.main
+ source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath() .join(File.pathSeparator))
}
@@ -120,7 +120,7 @@ afterEvaluate { project ->
task androidSourcesJar(type: Jar) {
classifier = 'sources'
- from android.sourceSets.main
+ from android.sourceSets.main.java.srcDirs
}
artifacts {
diff --git a/library/proguard-rules.pro b/library/proguard-rules.pro
index bb65c6f..74d44ee 100644
--- a/library/proguard-rules.pro
+++ b/library/proguard-rules.pro
@@ -15,3 +15,5 @@
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
+-keep class com.daimajia.androidanimations.** { *; }
+-keep interface com.daimajia.androidanimations.** { *; }
\ No newline at end of file
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/BaseViewAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/BaseViewAnimator.java
index fe4ff69..bd4426e 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/BaseViewAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/BaseViewAnimator.java
@@ -24,19 +24,23 @@
package com.daimajia.androidanimations.library;
+import android.animation.Animator;
+import android.animation.AnimatorSet;
+import android.animation.ValueAnimator;
import android.view.View;
import android.view.animation.Interpolator;
-import com.nineoldandroids.animation.Animator.AnimatorListener;
-import com.nineoldandroids.animation.AnimatorSet;
-import com.nineoldandroids.view.ViewHelper;
+import androidx.core.view.ViewCompat;
public abstract class BaseViewAnimator {
public static final long DURATION = 1000;
private AnimatorSet mAnimatorSet;
+
private long mDuration = DURATION;
+ private int mRepeatTimes = 0;
+ private int mRepeatMode = ValueAnimator.RESTART;
{
mAnimatorSet = new AnimatorSet();
@@ -45,9 +49,18 @@ public abstract class BaseViewAnimator {
protected abstract void prepare(View target);
- public void animate(View target) {
+ public BaseViewAnimator setTarget(View target) {
reset(target);
prepare(target);
+ return this;
+ }
+
+ public void animate() {
+ start();
+ }
+
+ public void restart() {
+ mAnimatorSet = mAnimatorSet.clone();
start();
}
@@ -57,22 +70,26 @@ public void animate(View target) {
* @param target
*/
public void reset(View target) {
- ViewHelper.setAlpha(target, 1);
- ViewHelper.setScaleX(target, 1);
- ViewHelper.setScaleY(target, 1);
- ViewHelper.setTranslationX(target, 0);
- ViewHelper.setTranslationY(target, 0);
- ViewHelper.setRotation(target, 0);
- ViewHelper.setRotationY(target, 0);
- ViewHelper.setRotationX(target, 0);
- ViewHelper.setPivotX(target, target.getMeasuredWidth() / 2.0f);
- ViewHelper.setPivotY(target, target.getMeasuredHeight() / 2.0f);
+ ViewCompat.setAlpha(target, 1);
+ ViewCompat.setScaleX(target, 1);
+ ViewCompat.setScaleY(target, 1);
+ ViewCompat.setTranslationX(target, 0);
+ ViewCompat.setTranslationY(target, 0);
+ ViewCompat.setRotation(target, 0);
+ ViewCompat.setRotationY(target, 0);
+ ViewCompat.setRotationX(target, 0);
}
/**
* start to animate
*/
public void start() {
+ for (Animator animator : mAnimatorSet.getChildAnimations()) {
+ if (animator instanceof ValueAnimator) {
+ ((ValueAnimator) animator).setRepeatCount(mRepeatTimes);
+ ((ValueAnimator) animator).setRepeatMode(mRepeatMode);
+ }
+ }
mAnimatorSet.setDuration(mDuration);
mAnimatorSet.start();
}
@@ -91,12 +108,24 @@ public long getStartDelay() {
return mAnimatorSet.getStartDelay();
}
- public BaseViewAnimator addAnimatorListener(AnimatorListener l) {
+ public BaseViewAnimator addAnimatorListener(Animator.AnimatorListener l) {
mAnimatorSet.addListener(l);
return this;
}
- public void removeAnimatorListener(AnimatorListener l) {
+ public void cancel() {
+ mAnimatorSet.cancel();
+ }
+
+ public boolean isRunning() {
+ return mAnimatorSet.isRunning();
+ }
+
+ public boolean isStarted() {
+ return mAnimatorSet.isStarted();
+ }
+
+ public void removeAnimatorListener(Animator.AnimatorListener l) {
mAnimatorSet.removeListener(l);
}
@@ -110,11 +139,20 @@ public BaseViewAnimator setInterpolator(Interpolator interpolator) {
}
public long getDuration() {
- return mAnimatorSet.getDuration();
+ return mDuration;
}
public AnimatorSet getAnimatorAgent() {
return mAnimatorSet;
}
+ public BaseViewAnimator setRepeatTimes(int repeatTimes) {
+ mRepeatTimes = repeatTimes;
+ return this;
+ }
+
+ public BaseViewAnimator setRepeatMode(int repeatMode) {
+ mRepeatMode = repeatMode;
+ return this;
+ }
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/Techniques.java b/library/src/main/java/com/daimajia/androidanimations/library/Techniques.java
index adab6b3..8dac711 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/Techniques.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/Techniques.java
@@ -51,6 +51,7 @@
import com.daimajia.androidanimations.library.fading_exits.FadeOutRightAnimator;
import com.daimajia.androidanimations.library.fading_exits.FadeOutUpAnimator;
import com.daimajia.androidanimations.library.flippers.FlipInXAnimator;
+import com.daimajia.androidanimations.library.flippers.FlipInYAnimator;
import com.daimajia.androidanimations.library.flippers.FlipOutXAnimator;
import com.daimajia.androidanimations.library.flippers.FlipOutYAnimator;
import com.daimajia.androidanimations.library.rotating_entrances.RotateInAnimator;
@@ -74,6 +75,9 @@
import com.daimajia.androidanimations.library.specials.HingeAnimator;
import com.daimajia.androidanimations.library.specials.RollInAnimator;
import com.daimajia.androidanimations.library.specials.RollOutAnimator;
+import com.daimajia.androidanimations.library.specials.in.DropOutAnimator;
+import com.daimajia.androidanimations.library.specials.in.LandingAnimator;
+import com.daimajia.androidanimations.library.specials.out.TakingOffAnimator;
import com.daimajia.androidanimations.library.zooming_entrances.ZoomInAnimator;
import com.daimajia.androidanimations.library.zooming_entrances.ZoomInDownAnimator;
import com.daimajia.androidanimations.library.zooming_entrances.ZoomInLeftAnimator;
@@ -87,6 +91,10 @@
public enum Techniques {
+ DropOut(DropOutAnimator.class),
+ Landing(LandingAnimator.class),
+ TakingOff(TakingOffAnimator.class),
+
Flash(FlashAnimator.class),
Pulse(PulseAnimator.class),
RubberBand(RubberBandAnimator.class),
@@ -122,7 +130,7 @@ public enum Techniques {
FlipInX(FlipInXAnimator.class),
FlipOutX(FlipOutXAnimator.class),
-
+ FlipInY(FlipInYAnimator.class),
FlipOutY(FlipOutYAnimator.class),
RotateIn(RotateInAnimator.class),
RotateInDownLeft(RotateInDownLeftAnimator.class),
@@ -158,6 +166,8 @@ public enum Techniques {
ZoomOutRight(ZoomOutRightAnimator.class),
ZoomOutUp(ZoomOutUpAnimator.class);
+
+
private Class animatorClazz;
private Techniques(Class clazz) {
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/YoYo.java b/library/src/main/java/com/daimajia/androidanimations/library/YoYo.java
index 53801e2..cab3de5 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/YoYo.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/YoYo.java
@@ -25,10 +25,12 @@
package com.daimajia.androidanimations.library;
+import android.animation.Animator;
+import android.animation.ValueAnimator;
import android.view.View;
import android.view.animation.Interpolator;
-import com.nineoldandroids.animation.Animator;
+import androidx.core.view.ViewCompat;
import java.util.ArrayList;
import java.util.List;
@@ -37,19 +39,30 @@ public class YoYo {
private static final long DURATION = BaseViewAnimator.DURATION;
private static final long NO_DELAY = 0;
+ public static final int INFINITE = -1;
+ public static final float CENTER_PIVOT = Float.MAX_VALUE;
- private Techniques techniques;
+ private BaseViewAnimator animator;
private long duration;
private long delay;
+ private boolean repeat;
+ private int repeatTimes;
+ private int repeatMode;
private Interpolator interpolator;
+ private float pivotX, pivotY;
private List callbacks;
private View target;
private YoYo(AnimationComposer animationComposer) {
- techniques = animationComposer.techniques;
+ animator = animationComposer.animator;
duration = animationComposer.duration;
delay = animationComposer.delay;
+ repeat = animationComposer.repeat;
+ repeatTimes = animationComposer.repeatTimes;
+ repeatMode = animationComposer.repeatMode;
interpolator = animationComposer.interpolator;
+ pivotX = animationComposer.pivotX;
+ pivotY = animationComposer.pivotY;
callbacks = animationComposer.callbacks;
target = animationComposer.target;
}
@@ -58,18 +71,53 @@ public static AnimationComposer with(Techniques techniques) {
return new AnimationComposer(techniques);
}
+ public static AnimationComposer with(BaseViewAnimator animator) {
+ return new AnimationComposer(animator);
+ }
+
+ public interface AnimatorCallback {
+ public void call(Animator animator);
+ }
+
+ private static class EmptyAnimatorListener implements Animator.AnimatorListener {
+ @Override
+ public void onAnimationStart(Animator animation) {
+ }
+
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ }
+
+ @Override
+ public void onAnimationCancel(Animator animation) {
+ }
+
+ @Override
+ public void onAnimationRepeat(Animator animation) {
+ }
+ }
+
public static final class AnimationComposer {
- private List callbacks = new ArrayList();
+ private List callbacks = new ArrayList<>();
- private Techniques techniques;
+ private BaseViewAnimator animator;
private long duration = DURATION;
+
private long delay = NO_DELAY;
+ private boolean repeat = false;
+ private int repeatTimes = 0;
+ private int repeatMode = ValueAnimator.RESTART;
+ private float pivotX = YoYo.CENTER_PIVOT, pivotY = YoYo.CENTER_PIVOT;
private Interpolator interpolator;
private View target;
private AnimationComposer(Techniques techniques) {
- this.techniques = techniques;
+ this.animator = techniques.getAnimator();
+ }
+
+ private AnimationComposer(BaseViewAnimator animator) {
+ this.animator = animator;
}
public AnimationComposer duration(long duration) {
@@ -87,23 +135,138 @@ public AnimationComposer interpolate(Interpolator interpolator) {
return this;
}
+ public AnimationComposer pivot(float pivotX, float pivotY) {
+ this.pivotX = pivotX;
+ this.pivotY = pivotY;
+ return this;
+ }
+
+ public AnimationComposer pivotX(float pivotX) {
+ this.pivotX = pivotX;
+ return this;
+ }
+
+ public AnimationComposer pivotY(float pivotY) {
+ this.pivotY = pivotY;
+ return this;
+ }
+
+ public AnimationComposer repeat(int times) {
+ if (times < INFINITE) {
+ throw new RuntimeException("Can not be less than -1, -1 is infinite loop");
+ }
+ repeat = times != 0;
+ repeatTimes = times;
+ return this;
+ }
+
+ public AnimationComposer repeatMode(int mode) {
+ repeatMode = mode;
+ return this;
+ }
public AnimationComposer withListener(Animator.AnimatorListener listener) {
callbacks.add(listener);
return this;
}
- public void playOn(View target) {
+ public AnimationComposer onStart(final AnimatorCallback callback) {
+ callbacks.add(new EmptyAnimatorListener() {
+ @Override
+ public void onAnimationStart(Animator animation) {
+ callback.call(animation);
+ }
+ });
+ return this;
+ }
+
+ public AnimationComposer onEnd(final AnimatorCallback callback) {
+ callbacks.add(new EmptyAnimatorListener() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ callback.call(animation);
+ }
+ });
+ return this;
+ }
+
+ public AnimationComposer onCancel(final AnimatorCallback callback) {
+ callbacks.add(new EmptyAnimatorListener() {
+ @Override
+ public void onAnimationCancel(Animator animation) {
+ callback.call(animation);
+ }
+ });
+ return this;
+ }
+
+ public AnimationComposer onRepeat(final AnimatorCallback callback) {
+ callbacks.add(new EmptyAnimatorListener() {
+ @Override
+ public void onAnimationRepeat(Animator animation) {
+ callback.call(animation);
+ }
+ });
+ return this;
+ }
+
+ public YoYoString playOn(View target) {
this.target = target;
- new YoYo(this).play();
+ return new YoYoString(new YoYo(this).play(), this.target);
}
}
- private void play() {
- final BaseViewAnimator animator = techniques.getAnimator();
+ /**
+ * YoYo string, you can use this string to control your YoYo.
+ */
+ public static final class YoYoString {
+
+ private BaseViewAnimator animator;
+ private View target;
+
+ private YoYoString(BaseViewAnimator animator, View target) {
+ this.target = target;
+ this.animator = animator;
+ }
+
+ public boolean isStarted() {
+ return animator.isStarted();
+ }
+
+ public boolean isRunning() {
+ return animator.isRunning();
+ }
+
+ public void stop() {
+ stop(true);
+ }
+
+ public void stop(boolean reset) {
+ animator.cancel();
+
+ if (reset)
+ animator.reset(target);
+ }
+ }
+
+ private BaseViewAnimator play() {
+ animator.setTarget(target);
+
+ if (pivotX == YoYo.CENTER_PIVOT) {
+ ViewCompat.setPivotX(target, target.getMeasuredWidth() / 2.0f);
+ } else {
+ target.setPivotX(pivotX);
+ }
+ if (pivotY == YoYo.CENTER_PIVOT) {
+ ViewCompat.setPivotY(target, target.getMeasuredHeight() / 2.0f);
+ } else {
+ target.setPivotY(pivotY);
+ }
animator.setDuration(duration)
+ .setRepeatTimes(repeatTimes)
+ .setRepeatMode(repeatMode)
.setInterpolator(interpolator)
.setStartDelay(delay);
@@ -112,8 +275,8 @@ private void play() {
animator.addAnimatorListener(callback);
}
}
-
- animator.animate(target);
+ animator.animate();
+ return animator;
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/BounceAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/BounceAnimator.java
index 7e1d34b..8beb599 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/BounceAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/BounceAnimator.java
@@ -24,16 +24,16 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class BounceAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"translationY",0,0,-30,0,-15,0,0)
+ ObjectAnimator.ofFloat(target, "translationY", 0, 0, -30, 0, -15, 0, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/FlashAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/FlashAnimator.java
index 7144f00..1aa3265 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/FlashAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/FlashAnimator.java
@@ -24,16 +24,16 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class FlashAnimator extends BaseViewAnimator{
+public class FlashAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0,1,0,1)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0, 1, 0, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/PulseAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/PulseAnimator.java
index 679f378..f8131b8 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/PulseAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/PulseAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class PulseAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/RubberBandAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/RubberBandAnimator.java
index 9e2e4a0..d443ea1 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/RubberBandAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/RubberBandAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RubberBandAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/ShakeAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/ShakeAnimator.java
index 5d31ce9..af88fde 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/ShakeAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/ShakeAnimator.java
@@ -25,16 +25,16 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ShakeAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "translationX", 0, 25, -25, 25, -25,15, -15, 6, -6, 0)
+ ObjectAnimator.ofFloat(target, "translationX", 0, 25, -25, 25, -25, 15, -15, 6, -6, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/StandUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/StandUpAnimator.java
index 6236a0b..e012992 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/StandUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/StandUpAnimator.java
@@ -24,23 +24,22 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-
-public class StandUpAnimator extends BaseViewAnimator{
+public class StandUpAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
- float x = (target.getWidth() - target.getPaddingLeft() - target.getPaddingRight())/2
+ public void prepare(View target) {
+ float x = (target.getWidth() - target.getPaddingLeft() - target.getPaddingRight()) / 2
+ target.getPaddingLeft();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"pivotX",x,x,x,x,x),
- ObjectAnimator.ofFloat(target,"pivotY",y,y,y,y,y),
- ObjectAnimator.ofFloat(target,"rotationX",55,-30,15,-15,0)
+ ObjectAnimator.ofFloat(target, "pivotX", x, x, x, x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y, y, y, y),
+ ObjectAnimator.ofFloat(target, "rotationX", 55, -30, 15, -15, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/SwingAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/SwingAnimator.java
index bf55f2b..8c772cb 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/SwingAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/SwingAnimator.java
@@ -24,16 +24,16 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SwingAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "rotation", 10, -10, 6, -6, 3, -3, 0)
+ ObjectAnimator.ofFloat(target, "rotation", 0, 10, -10, 6, -6, 3, -3, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/TadaAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/TadaAnimator.java
index d3c1d47..3263251 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/TadaAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/TadaAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class TadaAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"scaleX",1,0.9f,0.9f,1.1f,1.1f,1.1f,1.1f,1.1f,1.1f,1),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.9f,0.9f,1.1f,1.1f,1.1f,1.1f,1.1f,1.1f,1),
- ObjectAnimator.ofFloat(target,"rotation",0 ,-3 , -3, 3, -3, 3, -3,3,-3,0)
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.9f, 0.9f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.9f, 0.9f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1),
+ ObjectAnimator.ofFloat(target, "rotation", 0, -3, -3, 3, -3, 3, -3, 3, -3, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/WaveAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/WaveAnimator.java
index 9bf976c..f95e993 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/WaveAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/WaveAnimator.java
@@ -24,21 +24,21 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class WaveAnimator extends BaseViewAnimator{
+public class WaveAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
- float x = (target.getWidth() - target.getPaddingLeft() - target.getPaddingRight())/2
+ public void prepare(View target) {
+ float x = (target.getWidth() - target.getPaddingLeft() - target.getPaddingRight()) / 2
+ target.getPaddingLeft();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "rotation", 12,-12,3,-3,0),
- ObjectAnimator.ofFloat(target, "pivotX", x, x,x,x,x),
- ObjectAnimator.ofFloat(target, "pivotY", y, y,y,y,y)
+ ObjectAnimator.ofFloat(target, "rotation", 12, -12, 3, -3, 0),
+ ObjectAnimator.ofFloat(target, "pivotX", x, x, x, x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y, y, y, y)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/attention/WobbleAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/attention/WobbleAnimator.java
index 28b00f0..383e7ca 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/attention/WobbleAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/attention/WobbleAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.attention;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class WobbleAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
float width = target.getWidth();
- float one = (float)(width/100.0);
+ float one = (float) (width / 100.0);
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "translationX", 0 * one, -25 * one, 20 * one, -15 * one, 10 * one, -5 * one, 0 * one,0),
- ObjectAnimator.ofFloat(target, "rotation", 0, -5, 3, -3, 2, -1,0)
+ ObjectAnimator.ofFloat(target, "translationX", 0 * one, -25 * one, 20 * one, -15 * one, 10 * one, -5 * one, 0 * one, 0),
+ ObjectAnimator.ofFloat(target, "rotation", 0, -5, 3, -3, 2, -1, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInAnimator.java
index dc771e3..b86b840 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.bouncing_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class BounceInAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1, 1 ,1),
- ObjectAnimator.ofFloat(target,"scaleX",0.3f,1.05f,0.9f,1),
- ObjectAnimator.ofFloat(target,"scaleY",0.3f,1.05f,0.9f,1)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1, 1),
+ ObjectAnimator.ofFloat(target, "scaleX", 0.3f, 1.05f, 0.9f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 0.3f, 1.05f, 0.9f, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInDownAnimator.java
index 98f98c0..19e92d7 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInDownAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.bouncing_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class BounceInDownAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1,1,1),
- ObjectAnimator.ofFloat(target,"translationY",-target.getHeight(),30,-10,0)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1, 1),
+ ObjectAnimator.ofFloat(target, "translationY", -target.getHeight(), 30, -10, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInLeftAnimator.java
index 00256fd..61e6b50 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInLeftAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.bouncing_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class BounceInLeftAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"translationX",-target.getWidth(),30,-10,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1,1)
+ ObjectAnimator.ofFloat(target, "translationX", -target.getWidth(), 30, -10, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInRightAnimator.java
index 23ed918..28addc2 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInRightAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.bouncing_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class BounceInRightAnimator extends BaseViewAnimator{
+public class BounceInRightAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"translationX",target.getMeasuredWidth()+target.getWidth(),-30,10,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1,1)
+ ObjectAnimator.ofFloat(target, "translationX", target.getMeasuredWidth() + target.getWidth(), -30, 10, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInUpAnimator.java
index 59bc8c9..6ab17cf 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/bouncing_entrances/BounceInUpAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.bouncing_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class BounceInUpAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"translationY",target.getMeasuredHeight(), -30,10,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1,1)
+ ObjectAnimator.ofFloat(target, "translationY", target.getMeasuredHeight(), -30, 10, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1, 1)
);
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/BaseEasingMethod.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/BaseEasingMethod.java
deleted file mode 100644
index b723c6e..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/BaseEasingMethod.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions;
-
-import android.view.animation.Interpolator;
-
-import com.nineoldandroids.animation.FloatEvaluator;
-
-public abstract class BaseEasingMethod extends FloatEvaluator implements Interpolator{
- protected float mDuration;
-
-
- public BaseEasingMethod(float duration){
- mDuration = duration;
- }
-
- public abstract float getInterpolation(float input);
-
- public void setDuration(float duration){
- mDuration = duration;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Glider.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Glider.java
deleted file mode 100644
index c5788b2..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Glider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions;
-
-import com.nineoldandroids.animation.ObjectAnimator;
-import com.nineoldandroids.animation.PropertyValuesHolder;
-
-public class Glider {
-
- public static PropertyValuesHolder glide(Skill skill, float duration, PropertyValuesHolder propertyValuesHolder){
- propertyValuesHolder.setEvaluator(skill.getMethod(duration));
- return propertyValuesHolder;
- }
-
- public static ObjectAnimator glide(Skill skill, float duration, ObjectAnimator animator){
- BaseEasingMethod t = skill.getMethod(duration);
- animator.setInterpolator(t);
- animator.setEvaluator(t);
- return animator;
- }
-
-
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Skill.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Skill.java
deleted file mode 100644
index 575387d..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/Skill.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions;
-
-import com.daimajia.androidanimations.library.easing_functions.back.BackEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.back.BackEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.back.BackEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.bounce.BounceEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.bounce.BounceEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.bounce.BounceEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.circ.CircEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.circ.CircEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.circ.CircEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.cubic.CubicEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.cubic.CubicEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.cubic.CubicEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.elastic.ElasticEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.elastic.ElasticEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.expo.ExpoEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.expo.ExpoEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.expo.ExpoEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.quad.QuadEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.quad.QuadEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.quad.QuadEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.quint.QuintEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.quint.QuintEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.quint.QuintEaseOut;
-import com.daimajia.androidanimations.library.easing_functions.sine.SineEaseIn;
-import com.daimajia.androidanimations.library.easing_functions.sine.SineEaseInOut;
-import com.daimajia.androidanimations.library.easing_functions.sine.SineEaseOut;
-
-public enum Skill {
-
- BackEaseIn(BackEaseIn.class),
- BackEaseOut(BackEaseOut.class),
- BackEaseInOut(BackEaseInOut.class),
-
- BounceEaseIn(BounceEaseIn.class),
- BounceEaseOut(BounceEaseOut.class),
- BounceEaseInOut(BounceEaseInOut.class),
-
- CircEaseIn(CircEaseIn.class),
- CircEaseOut(CircEaseOut.class),
- CircEaseInOut(CircEaseInOut.class),
-
- CubicEaseIn(CubicEaseIn.class),
- CubicEaseOut(CubicEaseOut.class),
- CubicEaseInOut(CubicEaseInOut.class),
-
- ElasticEaseIn(ElasticEaseIn.class),
- ElasticEaseOut(ElasticEaseOut.class),
-
- ExpoEaseIn(ExpoEaseIn.class),
- ExpoEaseOut(ExpoEaseOut.class),
- ExpoEaseInOut(ExpoEaseInOut.class),
-
- QuadEaseIn(QuadEaseIn.class),
- QuadEaseOut(QuadEaseOut.class),
- QuadEaseInOut(QuadEaseInOut.class),
-
- QuintEaseIn(QuintEaseIn.class),
- QuintEaseOut(QuintEaseOut.class),
- QuintEaseInOut(QuintEaseInOut.class),
-
- SineEaseIn(SineEaseIn.class),
- SineEaseOut(SineEaseOut.class),
- SineEaseInOut(SineEaseInOut.class);
-
-
- private Class easingMethod;
-
- private Skill(Class clazz) {
- easingMethod = clazz;
- }
-
- public BaseEasingMethod getMethod(float duration) {
- try {
- return (BaseEasingMethod)easingMethod.getConstructor(float.class).newInstance(duration);
- } catch (Exception e) {
- e.printStackTrace();
- throw new Error("Can not init easingMethod instance");
- }
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseIn.java
deleted file mode 100644
index 5b2d60b..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseIn.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.back;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BackEaseIn extends BaseEasingMethod{
-
- private float s = 1.70158f;
-
- public BackEaseIn(float duration) {
- super(duration);
- }
-
- public BackEaseIn(float duration, float back){
- this(duration);
- s = back;
- }
-
- @Override
- public float getInterpolation(float input) {
- return input*input*((s+1)*input - s);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseInOut.java
deleted file mode 100644
index 0c762d6..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseInOut.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.back;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BackEaseInOut extends BaseEasingMethod{
-
- private float s = 1.70158f;
-
- public BackEaseInOut(float duration) {
- super(duration);
- }
-
- public BackEaseInOut(float duration, float back){
- this(duration);
- s = back;
- }
-
- @Override
- public float getInterpolation(float input) {
- float t = input*2.0f;
-
- if ((t) < 1)
- return (t*t*(((s*=(1.525f))+1)*t - s))/2.0f;
-
- return ((t-=2)*t*(((s*=(1.525f))+1)*t + s) + 2)/2.0f;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseOut.java
deleted file mode 100644
index af7fa22..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/back/BackEaseOut.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.back;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BackEaseOut extends BaseEasingMethod{
-
- private float s = 1.70158f;
-
- public BackEaseOut(float duration) {
- super(duration);
- }
-
- public BackEaseOut(float duration, float back){
- this(duration);
- s = back;
- }
- @Override
- public float getInterpolation(float input) {
- return (input-1)*input*((s+1)*input + s) + 1;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseIn.java
deleted file mode 100644
index a6b93ee..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseIn.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.bounce;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BounceEaseIn extends BaseEasingMethod {
-
- private BounceEaseOut mBounceEaseOut;
-
- public BounceEaseIn(float duration){
- super(duration);
- mBounceEaseOut = new BounceEaseOut(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input;
- }
-
- @Override
- public Float evaluate(float fraction, Number startValue, Number endValue) {
- float d = mDuration;
- float t = mDuration * fraction;
- float b = startValue.floatValue();
- float c = endValue.floatValue() - startValue.floatValue();
- return c - mBounceEaseOut.evaluate((d-t)/d,0,endValue) + b;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseInOut.java
deleted file mode 100644
index 3080427..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseInOut.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.bounce;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BounceEaseInOut extends BaseEasingMethod{
-
- private BounceEaseOut mBounceEaseOut;
- private BounceEaseIn mBounceEaseIn;
-
- public BounceEaseInOut(float duration){
- super(duration);
- mBounceEaseIn = new BounceEaseIn(duration);
- mBounceEaseOut = new BounceEaseOut(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input;
- }
-
- @Override
- public Float evaluate(float fraction, Number startValue, Number endValue) {
- float d = mDuration;
- float t = mDuration * fraction;
- float b = startValue.floatValue();
- float c = endValue.floatValue() - startValue.floatValue();
-
- if(2*fraction < 1){
- return mBounceEaseIn.evaluate(t * 2 / d, 0, c) * .5f + b;
- }else{
- return mBounceEaseOut.evaluate((t*2-d)/d, 0, c) * .5f + c*.5f + b;
- }
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseOut.java
deleted file mode 100644
index 546b849..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/bounce/BounceEaseOut.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.bounce;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class BounceEaseOut extends BaseEasingMethod{
-
- public BounceEaseOut(float duration){
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input;
- }
-
- @Override
- public Float evaluate(float fraction, Number startValue, Number endValue) {
- float d = mDuration;
- float t = fraction * mDuration;
- float b = startValue.floatValue();
- float c = endValue.floatValue() - startValue.floatValue();
- if ((t/=d) < (1/2.75f)) {
- return c*(7.5625f*t*t) + b;
- } else if (t < (2/2.75f)) {
- return c*(7.5625f*(t-=(1.5f/2.75f))*t + .75f) + b;
- } else if (t < (2.5/2.75)) {
- return c*(7.5625f*(t-=(2.25f/2.75f))*t + .9375f) + b;
- } else {
- return c*(7.5625f*(t-=(2.625f/2.75f))*t + .984375f) + b;
- }
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseIn.java
deleted file mode 100644
index 4faa234..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseIn.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.circ;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class CircEaseIn extends BaseEasingMethod{
-
- public CircEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return -((float)Math.sqrt(1-input*input) - 1);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseInOut.java
deleted file mode 100644
index daad7d2..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseInOut.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.circ;
-
-import android.view.animation.Interpolator;
-
-public class CircEaseInOut implements Interpolator{
- @Override
- public float getInterpolation(float input) {
- float x = input * 2.0f;
- if(x < 1){
- return -((float)Math.sqrt(1- x*x) -1) / 2.0f;
- }else{
- x -= 2;
- return ((float)Math.sqrt(1 - x*x) + 1) / 2.0f;
- }
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseOut.java
deleted file mode 100644
index 359ee0a..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/circ/CircEaseOut.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.circ;
-
-import android.view.animation.Interpolator;
-
-public class CircEaseOut implements Interpolator{
- @Override
- public float getInterpolation(float input) {
- input -= 1;
- return (float)Math.sqrt(1-input*input);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseIn.java
deleted file mode 100644
index 322ff21..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseIn.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.cubic;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class CubicEaseIn extends BaseEasingMethod{
-
- public CubicEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input * input * input;
- }
-
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseInOut.java
deleted file mode 100644
index d97d730..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseInOut.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.cubic;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class CubicEaseInOut extends BaseEasingMethod {
-
- public CubicEaseInOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- float x = input * 2;
- if(x < 1){
- return x*x*x/2;
- }else{
- x -= 2;
- return (x*x*x + 2)/2.0f;
- }
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseOut.java
deleted file mode 100644
index 668b8d2..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/cubic/CubicEaseOut.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.cubic;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class CubicEaseOut extends BaseEasingMethod {
-
- public CubicEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- float t = input - 1;
- return t * t * t + 1;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseIn.java
deleted file mode 100644
index 6068bbe..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseIn.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.elastic;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class ElasticEaseIn extends BaseEasingMethod{
-
- public ElasticEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input;
- }
-
- @Override
- public Float evaluate(float fraction, Number startValue, Number endValue) {
- float d = mDuration;
- float t = mDuration * fraction;
- float b = startValue.floatValue();
- float c = endValue.floatValue() - startValue.floatValue();
-
- if (t==0) return b; if ((t/=d)==1) return b+c;
- float p=d*.3f;
- float a=c;
- float s=p/4;
- return -(a*(float)Math.pow(2,10*(t-=1)) * (float)Math.sin( (t*d-s)*(2*(float)Math.PI)/p )) + b;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseOut.java
deleted file mode 100644
index 7e232b1..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/elastic/ElasticEaseOut.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.elastic;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class ElasticEaseOut extends BaseEasingMethod{
-
- public ElasticEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input;
- }
-
- @Override
- public Float evaluate(float fraction, Number startValue, Number endValue) {
- float d = mDuration;
- float t = mDuration * fraction;
- float b = startValue.floatValue();
- float c = endValue.floatValue() - startValue.floatValue();
-
- if (t==0) return b; if ((t/=d)==1) return b+c;
- float p=d*.3f;
- float a=c;
- float s=p/4;
- return (a*(float)Math.pow(2,-10*t) * (float)Math.sin( (t*d-s)*(2*(float)Math.PI)/p ) + c + b);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseIn.java
deleted file mode 100644
index 1139391..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseIn.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.expo;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class ExpoEaseIn extends BaseEasingMethod{
- public ExpoEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- if(input == 0){
- return 0;
- }
- return (float)Math.pow(2, 10 * (input - 1));
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseInOut.java
deleted file mode 100644
index 0472964..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseInOut.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.expo;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class ExpoEaseInOut extends BaseEasingMethod{
- public ExpoEaseInOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- if(input == 1 || input == 0){
- return input;
- }
- float x = input * 2;
- if(x < 1)
- return (float)Math.pow(2, 10 * (input - 1)) / 2;
- else
- return (-(float)Math.pow(2, -10 * input) + 1) / 2;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseOut.java
deleted file mode 100644
index f4b3fb7..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/expo/ExpoEaseOut.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.expo;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class ExpoEaseOut extends BaseEasingMethod{
- public ExpoEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- if(input == 1){
- return 1;
- }
- return (-(float)Math.pow(2, -10 * input) + 1);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseIn.java
deleted file mode 100644
index 86ca45b..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseIn.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quad;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuadEaseIn extends BaseEasingMethod{
- public QuadEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input * input;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseInOut.java
deleted file mode 100644
index 27a6ccc..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseInOut.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quad;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuadEaseInOut extends BaseEasingMethod{
- public QuadEaseInOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- float x = input * 2;
- if(x < 1){
- return x * x / 2.0f;
- }
- return -((--x)*(x-2) - 1)/2.0f;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseOut.java
deleted file mode 100644
index 16383c4..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quad/QuadEaseOut.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quad;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuadEaseOut extends BaseEasingMethod{
- public QuadEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return -input * (input-2);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseIn.java
deleted file mode 100644
index 8203bb2..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseIn.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quint;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuintEaseIn extends BaseEasingMethod{
- public QuintEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return input * input * input * input * input;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseInOut.java
deleted file mode 100644
index f974711..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseInOut.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quint;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuintEaseInOut extends BaseEasingMethod{
- public QuintEaseInOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- float x = input * 2;
- if(x < 1)
- return (float)Math.pow(x,5)/2.0f;
-
- x -= 2;
- return ((float)Math.pow(x,5) + 2)/ 2.0f;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseOut.java
deleted file mode 100644
index 5a78c1c..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/quint/QuintEaseOut.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.quint;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class QuintEaseOut extends BaseEasingMethod{
- public QuintEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- float x = input - 1;
- return (float)Math.pow(x,5) + 1;
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseIn.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseIn.java
deleted file mode 100644
index 062f167..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseIn.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.sine;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class SineEaseIn extends BaseEasingMethod{
-
- public SineEaseIn(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return (1 - (float)Math.cos(input * (Math.PI /2.0f)));
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseInOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseInOut.java
deleted file mode 100644
index d57d00f..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseInOut.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.sine;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class SineEaseInOut extends BaseEasingMethod{
- public SineEaseInOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return (float)(-(Math.cos(Math.PI*input) - 1)/2.0f);
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseOut.java b/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseOut.java
deleted file mode 100644
index a0e5fbd..0000000
--- a/library/src/main/java/com/daimajia/androidanimations/library/easing_functions/sine/SineEaseOut.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014 daimajia
- *
- * 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.
- */
-
-package com.daimajia.androidanimations.library.easing_functions.sine;
-
-import com.daimajia.androidanimations.library.easing_functions.BaseEasingMethod;
-
-public class SineEaseOut extends BaseEasingMethod{
- public SineEaseOut(float duration) {
- super(duration);
- }
-
- @Override
- public float getInterpolation(float input) {
- return (float)Math.sin(input * (Math.PI/2.0f));
- }
-}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInAnimator.java
index a7d3fd4..8ececcb 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInAnimator.java
@@ -24,16 +24,16 @@
package com.daimajia.androidanimations.library.fading_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeInAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInDownAnimator.java
index 7dd48bf..f72ae53 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInDownAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeInDownAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target, "translationY", -20, 0)
+ ObjectAnimator.ofFloat(target, "translationY", -target.getHeight() / 4, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInLeftAnimator.java
index dc1fd17..faaa0e9 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInLeftAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeInLeftAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target, "translationX", -20, 0)
+ ObjectAnimator.ofFloat(target, "translationX", -target.getWidth() / 4, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInRightAnimator.java
index 5322d58..a3d97f7 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInRightAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeInRightAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target, "translationX", 20, 0)
+ ObjectAnimator.ofFloat(target, "translationX", target.getWidth() / 4, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInUpAnimator.java
index 1052078..e3e0d97 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_entrances/FadeInUpAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeInUpAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target, "translationY", 20, 0)
+ ObjectAnimator.ofFloat(target, "translationY", target.getHeight() / 4, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutAnimator.java
index 3cd38ee..5407978 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutAnimator.java
@@ -24,16 +24,16 @@
package com.daimajia.androidanimations.library.fading_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeOutAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutDownAnimator.java
index 6d2191e..f38f89c 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutDownAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeOutDownAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0),
- ObjectAnimator.ofFloat(target,"translationY",0,20)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0),
+ ObjectAnimator.ofFloat(target, "translationY", 0, target.getHeight() / 4)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutLeftAnimator.java
index 2d885ba..a583f7b 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutLeftAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeOutLeftAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0),
- ObjectAnimator.ofFloat(target,"translationX",0,-20)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0),
+ ObjectAnimator.ofFloat(target, "translationX", 0, -target.getWidth() / 4)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutRightAnimator.java
index c171c1a..01c313d 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutRightAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeOutRightAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationX",0,20)
+ ObjectAnimator.ofFloat(target, "translationX", 0, target.getWidth() / 4)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutUpAnimator.java
index ce1242d..70928a4 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/fading_exits/FadeOutUpAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.fading_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FadeOutUpAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationY",0,-20)
+ ObjectAnimator.ofFloat(target, "translationY", 0, -target.getHeight() / 4)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInXAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInXAnimator.java
index 42fd054..2f66bba 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInXAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInXAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.flippers;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FlipInXAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipYAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInYAnimator.java
similarity index 93%
rename from library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipYAnimator.java
rename to library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInYAnimator.java
index 33e5b5d..78bbcf6 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipYAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipInYAnimator.java
@@ -24,12 +24,12 @@
package com.daimajia.androidanimations.library.flippers;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class FlipYAnimator extends BaseViewAnimator {
+public class FlipInYAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutXAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutXAnimator.java
index 34b2845..1780efe 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutXAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutXAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.flippers;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class FlipOutXAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutYAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutYAnimator.java
index 3321fc4..cd67c30 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutYAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/flippers/FlipOutYAnimator.java
@@ -24,12 +24,12 @@
package com.daimajia.androidanimations.library.flippers;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class FlipOutYAnimator extends BaseViewAnimator{
+public class FlipOutYAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
getAnimatorAgent().playTogether(
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInAnimator.java
index 6a649be..b787acb 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.rotating_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateInAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownLeftAnimator.java
index ae9cb16..9f9bdad 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownLeftAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.rotating_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateInDownLeftAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownRightAnimator.java
index 6e7db10..f9d1b1f 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInDownRightAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.rotating_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateInDownRightAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpLeftAnimator.java
index 36103c0..ea112ef 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpLeftAnimator.java
@@ -24,10 +24,10 @@
package com.daimajia.androidanimations.library.rotating_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateInUpLeftAnimator extends BaseViewAnimator {
@Override
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpRightAnimator.java
index 82c313b..b96982a 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_entrances/RotateInUpRightAnimator.java
@@ -24,12 +24,12 @@
package com.daimajia.androidanimations.library.rotating_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class RotateInUpRightAnimator extends BaseViewAnimator{
+public class RotateInUpRightAnimator extends BaseViewAnimator {
@Override
public void prepare(View target) {
float x = target.getWidth() - target.getPaddingRight();
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutAnimator.java
index 2f41fa2..5fbfe9b 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.rotating_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateOutAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0),
- ObjectAnimator.ofFloat(target,"rotation",0,200)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0),
+ ObjectAnimator.ofFloat(target, "rotation", 0, 200)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownLeftAnimator.java
index a814a6e..efbec35 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownLeftAnimator.java
@@ -24,21 +24,21 @@
package com.daimajia.androidanimations.library.rotating_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateOutDownLeftAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
float x = target.getPaddingLeft();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"rotation",0,90),
- ObjectAnimator.ofFloat(target,"pivotX",x,x),
- ObjectAnimator.ofFloat(target,"pivotY",y,y)
+ ObjectAnimator.ofFloat(target, "rotation", 0, 90),
+ ObjectAnimator.ofFloat(target, "pivotX", x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownRightAnimator.java
index 382d86c..5871ef1 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutDownRightAnimator.java
@@ -24,21 +24,21 @@
package com.daimajia.androidanimations.library.rotating_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateOutDownRightAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
float x = target.getWidth() - target.getPaddingRight();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"rotation",0,-90),
- ObjectAnimator.ofFloat(target,"pivotX",x,x),
- ObjectAnimator.ofFloat(target,"pivotY",y,y)
+ ObjectAnimator.ofFloat(target, "rotation", 0, -90),
+ ObjectAnimator.ofFloat(target, "pivotX", x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpLeftAnimator.java
index bd68d12..98a0d36 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpLeftAnimator.java
@@ -24,21 +24,21 @@
package com.daimajia.androidanimations.library.rotating_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateOutUpLeftAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
float x = target.getPaddingLeft();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"rotation",0,-90),
- ObjectAnimator.ofFloat(target,"pivotX",x,x),
- ObjectAnimator.ofFloat(target,"pivotY",y,y)
+ ObjectAnimator.ofFloat(target, "rotation", 0, -90),
+ ObjectAnimator.ofFloat(target, "pivotX", x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpRightAnimator.java
index c37fb55..275c092 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/rotating_exits/RotateOutUpRightAnimator.java
@@ -24,21 +24,21 @@
package com.daimajia.androidanimations.library.rotating_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RotateOutUpRightAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
float x = target.getWidth() - target.getPaddingRight();
float y = target.getHeight() - target.getPaddingBottom();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"rotation",0,90),
- ObjectAnimator.ofFloat(target,"pivotX",x,x),
- ObjectAnimator.ofFloat(target,"pivotY",y,y)
+ ObjectAnimator.ofFloat(target, "rotation", 0, 90),
+ ObjectAnimator.ofFloat(target, "pivotX", x, x),
+ ObjectAnimator.ofFloat(target, "pivotY", y, y)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInDownAnimator.java
index 49c390d..bc46644 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInDownAnimator.java
@@ -24,17 +24,18 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideInDownAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ int distance = target.getTop() + target.getHeight();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1),
- ObjectAnimator.ofFloat(target,"translationY",-2000,0)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1),
+ ObjectAnimator.ofFloat(target, "translationY", -distance, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInLeftAnimator.java
index 6151910..4dfebd4 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInLeftAnimator.java
@@ -24,17 +24,20 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class SlideInLeftAnimator extends BaseViewAnimator{
+public class SlideInLeftAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getWidth() - target.getLeft();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target,"translationX",-2000,0)
+ ObjectAnimator.ofFloat(target, "translationX", -distance, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInRightAnimator.java
index 1ccf087..f006fac 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInRightAnimator.java
@@ -24,17 +24,20 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideInRightAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getWidth() - target.getLeft();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target,"translationX",2000,0)
+ ObjectAnimator.ofFloat(target, "translationX", distance, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInUpAnimator.java
index 809e0b8..111b1a8 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideInUpAnimator.java
@@ -24,17 +24,20 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideInUpAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getHeight() - target.getTop();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 0, 1),
- ObjectAnimator.ofFloat(target,"translationY",2000,0)
+ ObjectAnimator.ofFloat(target, "translationY", distance, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutDownAnimator.java
index 946628d..7e8abbc 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutDownAnimator.java
@@ -24,17 +24,20 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideOutDownAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getHeight() - target.getTop();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationY",0,2000)
+ ObjectAnimator.ofFloat(target, "translationY", 0, distance)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutLeftAnimator.java
index c2ae54b..2f8b4e7 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutLeftAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideOutLeftAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationX",0,-2000)
+ ObjectAnimator.ofFloat(target, "translationX", 0, -target.getRight())
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutRightAnimator.java
index 18324b1..6eb7dac 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutRightAnimator.java
@@ -24,17 +24,20 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideOutRightAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getWidth() - target.getLeft();
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationX",0,2000)
+ ObjectAnimator.ofFloat(target, "translationX", 0, distance)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutUpAnimator.java
index 5f9e8df..2b836b2 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/sliders/SlideOutUpAnimator.java
@@ -24,17 +24,17 @@
package com.daimajia.androidanimations.library.sliders;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class SlideOutUpAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 0),
- ObjectAnimator.ofFloat(target,"translationY",0,-2000)
+ ObjectAnimator.ofFloat(target, "translationY", 0, -target.getBottom())
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/HingeAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/HingeAnimator.java
index 63d4d46..b1ba027 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/specials/HingeAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/HingeAnimator.java
@@ -24,20 +24,20 @@
package com.daimajia.androidanimations.library.specials;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.daimajia.androidanimations.library.easing_functions.Glider;
-import com.daimajia.androidanimations.library.easing_functions.Skill;
-import com.nineoldandroids.animation.ObjectAnimator;
+import com.daimajia.easing.Glider;
+import com.daimajia.easing.Skill;
-public class HingeAnimator extends BaseViewAnimator{
+public class HingeAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
float x = target.getPaddingLeft();
float y = target.getPaddingTop();
getAnimatorAgent().playTogether(
- Glider.glide(Skill.SineEaseInOut, 1300, ObjectAnimator.ofFloat(target,"rotation",0,80,60,80,60,60)),
+ Glider.glide(Skill.SineEaseInOut, 1300, ObjectAnimator.ofFloat(target, "rotation", 0, 80, 60, 80, 60, 60)),
ObjectAnimator.ofFloat(target, "translationY", 0, 0, 0, 0, 0, 700),
ObjectAnimator.ofFloat(target, "alpha", 1, 1, 1, 1, 1, 0),
ObjectAnimator.ofFloat(target, "pivotX", x, x, x, x, x, x),
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/RollInAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/RollInAnimator.java
index 21f647f..d55c26f 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/specials/RollInAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/RollInAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.specials;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RollInAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1),
- ObjectAnimator.ofFloat(target,"translationX",-(target.getWidth()-target.getPaddingLeft() - target.getPaddingRight()),0),
- ObjectAnimator.ofFloat(target,"rotation",-120,0)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1),
+ ObjectAnimator.ofFloat(target, "translationX", -(target.getWidth() - target.getPaddingLeft() - target.getPaddingRight()), 0),
+ ObjectAnimator.ofFloat(target, "rotation", -120, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/RollOutAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/RollOutAnimator.java
index d23ac13..baf2f25 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/specials/RollOutAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/RollOutAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.specials;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class RollOutAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0),
- ObjectAnimator.ofFloat(target,"translationX",0, target.getWidth()),
- ObjectAnimator.ofFloat(target,"rotation",0,120)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0),
+ ObjectAnimator.ofFloat(target, "translationX", 0, target.getWidth()),
+ ObjectAnimator.ofFloat(target, "rotation", 0, 120)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/in/DropOutAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/in/DropOutAnimator.java
new file mode 100644
index 0000000..b1b3237
--- /dev/null
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/in/DropOutAnimator.java
@@ -0,0 +1,19 @@
+package com.daimajia.androidanimations.library.specials.in;
+
+import android.animation.ObjectAnimator;
+import android.view.View;
+
+import com.daimajia.androidanimations.library.BaseViewAnimator;
+import com.daimajia.easing.Glider;
+import com.daimajia.easing.Skill;
+
+public class DropOutAnimator extends BaseViewAnimator {
+ @Override
+ protected void prepare(View target) {
+ int distance = target.getTop() + target.getHeight();
+ getAnimatorAgent().playTogether(
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1),
+ Glider.glide(Skill.BounceEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "translationY", -distance, 0))
+ );
+ }
+}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/in/LandingAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/in/LandingAnimator.java
new file mode 100644
index 0000000..7e7869e
--- /dev/null
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/in/LandingAnimator.java
@@ -0,0 +1,19 @@
+package com.daimajia.androidanimations.library.specials.in;
+
+import android.animation.ObjectAnimator;
+import android.view.View;
+
+import com.daimajia.androidanimations.library.BaseViewAnimator;
+import com.daimajia.easing.Glider;
+import com.daimajia.easing.Skill;
+
+public class LandingAnimator extends BaseViewAnimator {
+ @Override
+ protected void prepare(View target) {
+ getAnimatorAgent().playTogether(
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "scaleX", 1.5f, 1f)),
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "scaleY", 1.5f, 1f)),
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "alpha", 0, 1f))
+ );
+ }
+}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/specials/out/TakingOffAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/specials/out/TakingOffAnimator.java
new file mode 100644
index 0000000..9d4e4c1
--- /dev/null
+++ b/library/src/main/java/com/daimajia/androidanimations/library/specials/out/TakingOffAnimator.java
@@ -0,0 +1,19 @@
+package com.daimajia.androidanimations.library.specials.out;
+
+import android.animation.ObjectAnimator;
+import android.view.View;
+
+import com.daimajia.androidanimations.library.BaseViewAnimator;
+import com.daimajia.easing.Glider;
+import com.daimajia.easing.Skill;
+
+public class TakingOffAnimator extends BaseViewAnimator {
+ @Override
+ protected void prepare(View target) {
+ getAnimatorAgent().playTogether(
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "scaleX", 1f, 1.5f)),
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "scaleY", 1f, 1.5f)),
+ Glider.glide(Skill.QuintEaseOut, getDuration(), ObjectAnimator.ofFloat(target, "alpha", 1, 0))
+ );
+ }
+}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInAnimator.java
index ae49db7..35b79fb 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.zooming_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomInAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"scaleX",0.3f,1),
- ObjectAnimator.ofFloat(target,"scaleY",0.3f,1),
- ObjectAnimator.ofFloat(target,"alpha",0,1)
+ ObjectAnimator.ofFloat(target, "scaleX", 0.45f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 0.45f, 1),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInDownAnimator.java
index 7be07ce..748b631 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInDownAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.zooming_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomInDownAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"scaleX",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"scaleY",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"translationY",-2000,60,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1)
+ ObjectAnimator.ofFloat(target, "scaleX", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "translationY", -target.getBottom(), 60, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInLeftAnimator.java
index 4d25001..ebe5234 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInLeftAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.zooming_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomInLeftAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "scaleX", 0.1f, 0.475f, 1),
- ObjectAnimator.ofFloat(target,"scaleY",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"translationX",-2000,48,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1)
+ ObjectAnimator.ofFloat(target, "scaleY", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "translationX", -target.getRight(), 48, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInRightAnimator.java
index 12b33c0..82322ef 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInRightAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.zooming_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomInRightAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"scaleX", 0.1f, 0.475f, 1),
- ObjectAnimator.ofFloat(target,"scaleY",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"translationX",2000,-48,0),
- ObjectAnimator.ofFloat(target,"alpha",0,1,1)
+ ObjectAnimator.ofFloat(target, "scaleX", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "translationX", target.getWidth() + target.getPaddingRight(), -48, 0),
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInUpAnimator.java
index 07e4fdd..dea04d7 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_entrances/ZoomInUpAnimator.java
@@ -24,19 +24,22 @@
package com.daimajia.androidanimations.library.zooming_entrances;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomInUpAnimator extends BaseViewAnimator {
@Override
- protected void prepare(View target) {
+ public void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getHeight() - target.getTop();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",0,1,1),
- ObjectAnimator.ofFloat(target,"scaleX",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"scaleY",0.1f,0.475f,1),
- ObjectAnimator.ofFloat(target,"translationY",2000,-60,0)
+ ObjectAnimator.ofFloat(target, "alpha", 0, 1, 1),
+ ObjectAnimator.ofFloat(target, "scaleX", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "scaleY", 0.1f, 0.475f, 1),
+ ObjectAnimator.ofFloat(target, "translationY", distance, -60, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutAnimator.java
index 410ddf0..0f4fef8 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutAnimator.java
@@ -24,18 +24,18 @@
package com.daimajia.androidanimations.library.zooming_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
-public class ZoomOutAnimator extends BaseViewAnimator{
+public class ZoomOutAnimator extends BaseViewAnimator {
@Override
protected void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha",1,0,0),
- ObjectAnimator.ofFloat(target,"scaleX",1,0.3f,0),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.3f,0)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 0, 0),
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.3f, 0),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.3f, 0)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutDownAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutDownAnimator.java
index 076fa23..d5d4f31 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutDownAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutDownAnimator.java
@@ -24,19 +24,22 @@
package com.daimajia.androidanimations.library.zooming_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomOutDownAnimator extends BaseViewAnimator {
@Override
protected void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getHeight() - target.getTop();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "alpha",1, 1,0),
- ObjectAnimator.ofFloat(target,"scaleX",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"translationY",0,-60,2000)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 1, 0),
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "translationY", 0, -60, distance)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutLeftAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutLeftAnimator.java
index 3cd066b..ac80be2 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutLeftAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutLeftAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.zooming_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomOutLeftAnimator extends BaseViewAnimator {
@Override
protected void prepare(View target) {
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target, "alpha",1, 1, 0),
- ObjectAnimator.ofFloat(target,"scaleX",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"translationX",0,42,-2000)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 1, 0),
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "translationX", 0, 42, -target.getRight())
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutRightAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutRightAnimator.java
index caced96..7bc3fb0 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutRightAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutRightAnimator.java
@@ -24,19 +24,22 @@
package com.daimajia.androidanimations.library.zooming_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
+import android.view.ViewGroup;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomOutRightAnimator extends BaseViewAnimator {
@Override
protected void prepare(View target) {
+ ViewGroup parent = (ViewGroup) target.getParent();
+ int distance = parent.getWidth() - parent.getLeft();
getAnimatorAgent().playTogether(
- ObjectAnimator.ofFloat(target,"alpha", 1, 1, 0),
- ObjectAnimator.ofFloat(target,"scaleX",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"translationX",0,-42,2000)
+ ObjectAnimator.ofFloat(target, "alpha", 1, 1, 0),
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "translationX", 0, -42, distance)
);
}
}
diff --git a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutUpAnimator.java b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutUpAnimator.java
index 60401a1..4958dcd 100644
--- a/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutUpAnimator.java
+++ b/library/src/main/java/com/daimajia/androidanimations/library/zooming_exits/ZoomOutUpAnimator.java
@@ -24,19 +24,19 @@
package com.daimajia.androidanimations.library.zooming_exits;
+import android.animation.ObjectAnimator;
import android.view.View;
import com.daimajia.androidanimations.library.BaseViewAnimator;
-import com.nineoldandroids.animation.ObjectAnimator;
public class ZoomOutUpAnimator extends BaseViewAnimator {
@Override
protected void prepare(View target) {
getAnimatorAgent().playTogether(
ObjectAnimator.ofFloat(target, "alpha", 1, 1, 0),
- ObjectAnimator.ofFloat(target,"scaleX",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"scaleY",1,0.475f,0.1f),
- ObjectAnimator.ofFloat(target,"translationY",0,60,-2000)
+ ObjectAnimator.ofFloat(target, "scaleX", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "scaleY", 1, 0.475f, 0.1f),
+ ObjectAnimator.ofFloat(target, "translationY", 0, 60, -target.getBottom())
);
}
}
diff --git a/library/src/main/res/values/strings.xml b/library/src/main/res/values/strings.xml
new file mode 100644
index 0000000..d069f1c
--- /dev/null
+++ b/library/src/main/res/values/strings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+ AndroidAnimations
+
+