2013-07-26 2 views

Répondre

1

Je l'ai essayé en utilisant l'animation du cadre. Mais Quelle est la manière efficace de montrer .gif? J'ai essayé d'utiliser webview aussi. Voici le code

public class GifWebView extends View { 
    private Movie mMovie; 
    InputStream mStream; 
    long mMoviestart; 
    private boolean play; 

public GifWebView(Context context, InputStream stream) { 
    super(context); 
    mStream = stream; 
    setPlay(true); 
    mMovie = Movie.decodeStream(mStream); 
} 

@Override 
protected void onDraw(Canvas canvas) { 

    canvas.drawColor(Color.TRANSPARENT); 
    super.onDraw(canvas); 
    final long now = SystemClock.uptimeMillis(); 

    if (mMoviestart == 0) { 
     mMoviestart = now; 
    } 
    final int relTime = (int) ((now - mMoviestart) % mMovie.duration()); 

    mMovie.setTime(relTime); 
    mMovie.draw(canvas, 20, 20); 
    if (play) { 
     Log.i("reltime", "" + relTime + ",duration:" + mMovie.duration()); 
     this.invalidate(); 
    } 
} 

@Override 
public boolean onTouchEvent(android.view.MotionEvent event) { 
    return true; 
}; 

public boolean isPlay() { 
    return play; 
} 
0

Si vous souhaitez visualiser une image gif (sans WebView), vous devrez diviser en images et animer chacun d'entre eux, jetez un oeil here:

Un autre moyen pour cela est:

http://www.imagemagick.org/

http://www.imagemagick.org/Usage/anim_basics/#adjoin

OU

http://www.gif-animator.com/

http://www.xoyosoft.com/gs/

+0

Je ne vois pas le code, mais l'approche 'WebView' est à mon avis la plus efficace. – g00dy

+0

J'ai essayé l'affichage personnalisé pour montrer .gif et ajouter cette vue à la disposition relative normale pas à la vue Web. L'avez-vous déjà essayé? Coz aussi loin que je vérifie il n'y a pas de problème dans l'animation. Qu'est-ce qui dit? Je ne sais pas quel est le besoin de voir le web dont tout le monde parle. –

Questions connexes