Quelle est l'action appropriée à entreprendre lorsque vous devez modifier l'image d'arrière-plan d'une ProgressBar ? Je veux dire qu'il faut utiliser une image .gif comme : http://2.bp.blogspot.com/-O7nsXfmgwSc/T6PQ0PVr6-I/AAAAAAAAAQI/-eXkEXj24-s/s1600/02.gif et si oui, la couleur de premier plan de la barre remplit-elle le fichier image pendant le processus ? Existe-t-il un moyen de créer une animation pour l'arrière-plan de la barre ? Ce que je veux, c'est montrer l'animation tant que le processus ne couvre pas la totalité de la barre.
Réponse
Trop de publicités?Vous devez récupérer toutes ces images gif en tant qu'individus et les placer dans la liste des animations du fichier xml.
Voici le code de votre fichier anim_progress.xml
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false">
<item android:drawable="@drawable/i1" android:duration="500" />
<item android:drawable="@drawable/i2" android:duration="500" />
<item android:drawable="@drawable/i3" android:duration="500" />
<item android:drawable="@drawable/i4" android:duration="500" />
<item android:drawable="@drawable/i5" android:duration="500" />
<item android:drawable="@drawable/i6" android:duration="500" />
<item android:drawable="@drawable/i7" android:duration="500" />
<item android:drawable="@drawable/i8" android:duration="500" />
</animation-list>
Définir la durée du changement de l'effet lisse pour donner une image animée comme un gif.
Voici le code pour utiliser ce fichier
ImageView iv = new ImageView(this);
iv.setBackgroundResource(R.drawable.anim_progress);
final AnimationDrawable mailAnimation = (AnimationDrawable) iv.getBackground();
iv.post(new Runnable() {
public void run() {
if ( mailAnimation != null ) mailAnimation.start();
}
});
setContentView(iv) ;
vous pouvez obtenir toutes les images du fichier gif à partir de ce site.
par exemple
http://2.bp.blogspot.com/-O7nsXfmgwSc/T6PQ0PVr6-I/AAAAAAAAAQI/-eXkEXj24-s/s1600/02.gif
ce lien, passez-le et vous obtiendrez toutes les images du cadre.