¿Cómo usar AnimateDimagedRawable (imagen GIF) antes de la API 28? -- android campo con gif campo con android-9.0-pie campo con animatedimagedrawable camp Relacionados El problema

How to use AnimatedImageDrawable (GIF image) before API 28?


3
vote

problema

Español

en API 28 AnimatedImageDrawable Se introdujo para mostrar imágenes GIF:

https://developer.android.com/reference/android / graphics/drawable/animatedimagedrawable.html

Dibujable para dibujar imágenes animadas (como GIF).

El problema es que no le dijeron nada sobre cómo usarlo con AppCompat-v7 o Support-v4 Bibliotecas para la retrocompatibilidad antes de la API 28.

¿Alguien sabe si es posible usarlo antes de la API 28 para mostrar imágenes GIF?

Original en ingles

In API 28 AnimatedImageDrawable was introduced for displaying gif images:

https://developer.android.com/reference/android/graphics/drawable/AnimatedImageDrawable.html

Drawable for drawing animated images (like GIF).

The problem is that they don't told anything about how to use it with AppCompat-v7 or Support-v4 libraries for retrocompatibility before API 28.

Does anyone know if is possible to use it before API 28 for displaying GIF images?

           

Lista de respuestas

4
 
vote
vote
La mejor respuesta
 

Respuesta corta: No, no puede usar #> sapply(seq(nrow(df)), foo, x=df$sample) # [1] NA 0.23975006 0.12629071 0.45777934 0.84662051 0.83168998 0.11925118 0.50873996 0.06607348 0.63103339You can put the result in your dataframe: df$result <- sapply(seq(nrow(df)), foo, x=df$sample) 2 a continuación API 28 y no hay una versión de compat de la clase.

Para su problema, tiene diferentes opciones basadas en su situación:

  1. Si en su aplicación ya está utilizando #> sapply(seq(nrow(df)), foo, x=df$sample) # [1] NA 0.23975006 0.12629071 0.45777934 0.84662051 0.83168998 0.11925118 0.50873996 0.06607348 0.63103339You can put the result in your dataframe: df$result <- sapply(seq(nrow(df)), foo, x=df$sample) 3 o #> sapply(seq(nrow(df)), foo, x=df$sample) # [1] NA 0.23975006 0.12629071 0.45777934 0.84662051 0.83168998 0.11925118 0.50873996 0.06607348 0.63103339You can put the result in your dataframe: df$result <- sapply(seq(nrow(df)), foo, x=df$sample) 4 , ambos manejan imágenes GIF automáticamente y puede usarlas en lugar de animatedImagedrawable (lo desalenté para agregar Esas grandes bibliotecas solo para manejar GIF si no necesita las otras características que proporcionan).
  2. Puede usar un #> sapply(seq(nrow(df)), foo, x=df$sample) # [1] NA 0.23975006 0.12629071 0.45777934 0.84662051 0.83168998 0.11925118 0.50873996 0.06607348 0.63103339You can put the result in your dataframe: df$result <- sapply(seq(nrow(df)), foo, x=df$sample) 5 incrustando la imagen en un HTML y luego cargue la página HTML dentro del WebView
  3. Use una biblioteca conocida para hacer lo que es API 17+, llamado GIF Android Dobleable

Para ambas opciones 1 y 2 puede encontrar muchos ejemplos en línea. Algunos de ellos están en este hilo :

 

Short answer: No, you can't use AnimatedImageDrawable below API 28 and there is no compat version of the class.

For your problem you have different options based on your situation:

  1. If in your app you are already using Picasso or Glide, they both handle GIF images automatically and you can use them in place of AnimatedImageDrawable (I discourage you to add those big libraries just to handle GIF if you don't need the other features they provide).
  2. You can use a WebView embedding the image in an HTML and then loading the HTML page inside the WebView
  3. Use a known library to do that which is API 17+, called Android Gif Drawable

For both options 1 and 2 you can find plenty of examples online. Some of them are in this thread:

 
 
3
 
vote

Use película de Android , aquí hay un ejemplo de cómo jugar GIF:

  #> sapply(seq(nrow(df)), foo, x=df$sample) # [1]         NA 0.23975006 0.12629071 0.45777934 0.84662051 0.83168998 0.11925118 0.50873996 0.06607348 0.63103339You can put the result in your dataframe:  df$result <- sapply(seq(nrow(df)), foo, x=df$sample) 6  
 

Use Android Movie class, here is an example of how to play GIF's:

// initialize Movie object Movie movie = Movie.decodeStream(resources.openRawResource(R.drawable.my_gif)); int startTime = System.currentTimeMillis();  // drawing GIF to Canvas // this line will make your GIF looping movie.setTime((int) (System.currentTimeMillis() - startTime) % movie.duration()); movie.draw(canvas, x, y);  // pass the coordinates of drawing 
 
 

Relacionados problema

3  ¿Cómo usar AnimateDimagedRawable (imagen GIF) antes de la API 28?  ( How to use animatedimagedrawable gif image before api 28 ) 
en API 28 AnimatedImageDrawable Se introdujo para mostrar imágenes GIF: https://developer.android.com/reference/android / graphics/drawable/animatedimage...

-1  Android: Cómo hacer que animeDimagedAwleable Llene el ImageView  ( Android how to make animatedimagedrawable fill the imageview ) 
Estoy probando el nuevo animatedImagedAwleable de Android 9. Es bastante conveniente comparar con el viejo android.graphics.movie clase. Sin embargo, simple...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos