I've been struggling for a few days on this, finally just decided to ask. It's so simple I've got to be missing something very basic.
I have an XML layout page with an image defined. I have two anim XML pages, one to change alpha from 0 to 1, and the other from 1 to 0 in order to create a "blinking" effect. So the alphaAnimation is defined in XML, I just need to call it.
The image pops up, but there's no looping blinking effect.
public class blinker extends Activity { //create name of animation Animation myFadeInAnimation; Animation myFadeOutAnimation; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.scanning_view); //grab the imageview and load the animations ImageView myImageView = (ImageView) findViewById(R.id.blinkingView01); Animation myFadeInAnimation = AnimationUtils.loadAnimation(null, R.anim.fade_in); Animation myFadeOutAnimation = AnimationUtils.loadAnimation(null, R.anim.fade_out); //fade it in, and fade it out. myImageView.startAnimation(myFadeInAnimation); myImageView.startAnimation(myFadeOutAnimation); } }
Two XML Animation layouts in Anim resource:
<?xml version="1.0" encoding="UTF-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:interpolator="@android:anim/accelerate_interpolator" android:duration="50" android:repeatCount="infinite"/> </set>
And the other:
<?xml version="1.0" encoding="UTF-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:interpolator="@android:anim/accelerate_interpolator" android:duration="1000" android:repeatCount="infinite"/> </set>
An animation that controls the alpha level of an object. Useful for fading things in and out. This animation ends up changing the alpha property of a Transformation.
The best way to tween fade :
ImageView myImageView = (ImageView) findViewById(R.id.imageView2); Animation myFadeInAnimation = AnimationUtils.loadAnimation(Splash.this, R.anim.tween); myImageView.startAnimation(myFadeInAnimation);
in your res/anim/ create tween.xml tween 1s start opacity 0 to 1 and reverse infinit...
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="1000" android:repeatMode="reverse" android:repeatCount="infinite" /> </set>
Why not use android:repeatMode="reverse"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With