Animation Not Starting Until Ui Updates Or Touch Event
Solution 1:
A little more research showed that my problem was the same a this question: Layout animation not working on first run
The flashView
's visibility was set to GONE
by default (causing the Animation
not to start immediately as the View
had never been rendered), so I just need to set it to INVISIBLE
before calling flashView.startAnimation()
Solution 2:
If setting the View
to VISIBLE
won't work, as was in my case, it helped for me to call requestLayout()
before starting the Animation
, like so:
Animationan=newAnimation() {
...
view.requestLayout();
view.startAnimation(an);
In my case, my View
was 0dip
high which prevented onAnimationStart
from being called, this helped me around that problem.
Solution 3:
This worked for me:
view.setVisibility(View.VISIBLE);
view.startAnimation(animation);
I had to set the view
to VISIBLE
(not INVISIBLE
, neither GONE
), causing the view renderization needed to animate it.
Solution 4:
That's not an easy one. Till you got a real answer : The animation start is triggered by onNetworkEvent. As we don't know the rest of the code, you should look there, try to change onNetworkEvent by an other event that you can easily identify, just to debug if the rest of the code is ok or if it's just the trigger that is responsible for it.
Solution 5:
May be it will help someone, because previous answers not helped me.
My animation was changing height of view (from 0 to it's real height and back) on click - expand and collapse animations.
Nothing worked until i added listener and set visibility to GONE, when animation ends:
collapseAnim.setAnimationListener(newAnimation.AnimationListener() {
@OverridepublicvoidonAnimationStart(Animation animation) {
}
@OverridepublicvoidonAnimationEnd(Animation animation) {
view.setVisibility(View.GONE);
}
@OverridepublicvoidonAnimationRepeat(Animation animation) {
}
});
And when expand just set it to VISIBLE before animation:
view.setVisibility(View.VISIBLE);
view.startAnimation(expandAnim);
Post a Comment for "Animation Not Starting Until Ui Updates Or Touch Event"