Vous pouvez utiliser l'animation de la propriété pour changer la couleur
int colorFrom = getResources().getColor(R.color.red);
int colorTo = getResources().getColor(R.color.blue);
ValueAnimator colorAnimation = ValueAnimator.ofObject(new ArgbEvaluator(), colorFrom, colorTo);
colorAnimation.setDuration(500); // milliseconds
colorAnimation.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animator) {
textView.setBackgroundColor((int) animator.getAnimatedValue());
}
});
colorAnimation.start();
Utilisez des animations alpha pour estomper et le textchanging donc sur la répétition est quand il se fane de retour dans de sorte que vous pouvez mettre à jour le texte à ce moment-
AlphaAnimation anim = new AlphaAnimation(1.0f, 0.0f);
anim.setDuration(500);
anim.setRepeatCount(1);
anim.setRepeatMode(Animation.REVERSE);
txtLabel.startAnimation(anim);
anim.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
txtLabel.setText("my next Text"); //for fading back in
}
});
Vous pouvez utiliser la même animation pour alpha sur un bitmap ou sur imageView pour impulser des impulsions d'entrée et de sortie.
AlphaAnimation animPulse = new AlphaAnimation(1.0f, 0.0f);
animPulse.setDuration(500);
animPulse.setRepeatCount(Animation.INFINITE);
animPulse.setRepeatMode(Animation.REVERSE);
imgPulse.startAnimation(animPulse);
Alors bien sûr, il suffit de mettre dans votre
public void onCreate(){
Handler mMainHandler = new Handler(Looper.prepareMainLooper());
mMainHandler.postDelay(new Runnable(){
doAnimations();
}, 1000);
}
Ensuite, il suffit à toutes vos animations de grumeaux dans les méthodes et les appeler à partir doAnimations. Bonne chance.
Mélanger Java et Kotlin dans la même réponse peut être déroutant pour les lecteurs moins expérimentés – Jahnold
lol, merci jahnold. Je n'avais même pas réalisé que je l'avais fait. J'ai simplement copié et collé les extraits de différents projets, puis tapé manuellement le morceau onCreate. Donc ne me suis pas rendu compte que j'ai copié à partir de deux langues différentes. Je me suis fixé à seulement Java. Merci de le saisir. – Sam