Dans mon application je reçois l'image du serveur et les construire d'image animation.this toutes choses sont partis être bonne et je crée la méthode pour patchage est la méthode ::confusion pour passer argument AsyncTask
package com.animation;
import java.io.InputStream;
import java.net.URL;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.AnimationDrawable;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.widget.Button;
import android.widget.ImageView;
public class animation extends Activity {
Button Buttona;
AnimationDrawable animation;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView img = (ImageView) findViewById(R.id.simple_anim);
animation = new AnimationDrawable();
try {
for(int i=0;i<54;i++)
{
xyz("girl000",i);
}
animation.setOneShot(false);
} catch (Exception e) {
}
img.setBackgroundDrawable(animation);
img.post(new Starter());
}
public void xyz(String str,int x)
{
try {
Bitmap bitmap = BitmapFactory.decodeStream((InputStream) new URL(
"http://201.109.115.111/MRESC/images/test/girl/"+"girl000"+x+".png")
.getContent());
Drawable frame =new BitmapDrawable(bitmap);
animation.addFrame(frame, 50);
} catch (Exception e) {
}
}
class Starter implements Runnable {
public void run() {
animation.start();
}
}
}
maintenant mon problème est il prend beaucoup de temps pour charger l'image à partir du serveur si simplement je prévois d'utiliser asyncTask. mais le problème est que je ne peux pas obtenir le jugement que comment puis-je faire cela? pouvez-vous me donner l'exemple (Note: Je sais que AsyncTask et utilise déjà mais le problème est passage d 'arguments selon ma déclarer la méthode xyz()
)
Merci nik
pouvez-vous donner un exemple? –
je prends à propos de http://developer.android.com/reference/android/os/AsyncTask.html pas le nom de la classe asynctask. –
oui je comprends que, vous enveloppez l'argument dans xyz à un nouvel encapsuleur d'objet et passez l'Object Wrapper comme param à la asyncTask. Laissez-moi mettre le code pour illustrer cela. Voir la mise à jour de la réponse – momo