A little animation framework which could help you to show message in a nice looking way
Java
2,358
16 commits
updated Feb 17, 2021
A little animation framework which could help you to show message in a nice looking way.

TextSurface instance or add it in your layout.Text instancies with TextBuilder defining appearance of text and position:Text textDaai = TextBuilder
.create("Daai")
.setSize(64)
.setAlpha(0)
.setColor(Color.WHITE)
.setPosition(Align.SURFACE_CENTER).build();
TextSurface instance:textSurface.play(
new Sequential(
Slide.showFrom(Side.TOP, textDaai, 500),
Delay.duration(500),
Alpha.hide(textDaai, 1500)
)
);
See full sample here.
To play animations sequentially use Sequential.java
To play animations simultaneously use Parallel.java
Animations/effects could be combined like this:
new Parallel(Alpha.show(textA, 500), ChangeColor.to(textA, 500, Color.RED))
i.e. alpha and color of text will be changed simultaneously in 500ms
There're two basic classes which you could extend to add custom animation:
AbstractSurfaceAnimation.java to animate basic parameters like alpha, translation, scale and others. (See Alpha.java or ChangeColor.java)ITextEffect.java interface which could be used for more complex animations. (See Rotate3D.java or ShapeReveal.java)The framework is based on standard android animation classes which uses reflection extensively. To avoid obfuscation you need to exclude classes of the framework:
-keep class su.levenetc.android.textsurface.** { *; }
repositories {
maven { url "https://jitpack.io" }
}
//...
dependencies {
//...
compile 'com.github.elevenetc:textsurface:0.9.1'
}
2,210 followers · starred Oct 2015
75 followers · starred Apr 2020
A little animation framework which could help you to show message in a nice looking way
Java
2,358
16 commits
updated Feb 17, 2021
A little animation framework which could help you to show message in a nice looking way.

TextSurface instance or add it in your layout.Text instancies with TextBuilder defining appearance of text and position:Text textDaai = TextBuilder
.create("Daai")
.setSize(64)
.setAlpha(0)
.setColor(Color.WHITE)
.setPosition(Align.SURFACE_CENTER).build();
TextSurface instance:textSurface.play(
new Sequential(
Slide.showFrom(Side.TOP, textDaai, 500),
Delay.duration(500),
Alpha.hide(textDaai, 1500)
)
);
See full sample here.
To play animations sequentially use Sequential.java
To play animations simultaneously use Parallel.java
Animations/effects could be combined like this:
new Parallel(Alpha.show(textA, 500), ChangeColor.to(textA, 500, Color.RED))
i.e. alpha and color of text will be changed simultaneously in 500ms
There're two basic classes which you could extend to add custom animation:
AbstractSurfaceAnimation.java to animate basic parameters like alpha, translation, scale and others. (See Alpha.java or ChangeColor.java)ITextEffect.java interface which could be used for more complex animations. (See Rotate3D.java or ShapeReveal.java)The framework is based on standard android animation classes which uses reflection extensively. To avoid obfuscation you need to exclude classes of the framework:
-keep class su.levenetc.android.textsurface.** { *; }
repositories {
maven { url "https://jitpack.io" }
}
//...
dependencies {
//...
compile 'com.github.elevenetc:textsurface:0.9.1'
}
2,210 followers · starred Oct 2015
75 followers · starred Apr 2020