¿La imagen tarda demasiado en cargarse?

EDITAR:

Después de hacer un rastro de método, siempre que cambie con el cuadrado púrpura, el gráfico sube mucho. Cuando cambio con un círculo azul o verde, se mantiene bajo:

Introduzca aquí la descripción de la imagen

Aquí están los métodos del intercambio con el cuadrado púrpura:

Introduzca aquí la descripción de la imagen

Tengo una aplicación que intercambia dos botones. Hay un botón rojo, cuando se hace clic, elige un botón aleatorio de los otros tres, y los intercambios.

Intenté hacer esto de una manera simplemente intercambiando imágenes. En el onClickListener, sólo escuché para los clics con botones con el botón rojo.

  1. Obtener imagen aleatoria
  2. En blanco
  3. Busque el botón rojo
  4. Dé el fondo del botón rojo que la imagen al azar tenía (intercambio)
  5. Dar imagen aleatoria (que está en blanco ahora) fondo rojo

Si esto es confuso … déjalo. Pero:

Cada vez que cambio imágenes de una imagen más grande a una imagen más pequeña, el proceso toma mucho más tiempo. Es mucho más rápido al intercambiar entre dos imágenes más pequeñas. Cómo puedo solucionar esto. ¿Hay un cierto tamaño de imagen que es óptimo para Android?

Introduzca aquí la descripción de la imagen

Aquí está el código de diseño:

Https://gist.github.com/anonymous/813883bce89606d2a82e

Como se puede ver en la imagen, se necesita mucho (MUCHO!) Menor tiempo de intercambio de imágenes de fondo con el círculo azul que el cuadrado de color púrpura. Por qué…?



¿Por qué es la manera más lenta (donde sólo cambio las imágenes y compruebo un botón con una imagen roja) basado en los tamaños de imagen? ¿Qué tamaño de imagen debo usar?

Muchas gracias por tu tiempo

Mi primera conjetura sería que tienes algunos PNG grandes que toman mucho tiempo para cargar.

Pero, tenemos buenas herramientas para ayudarnos a averiguar – por lo que no tenemos que adivinar!

Realice un rastreo de método (disponible en la pestaña CPU de Android Studio o en la vista DDMS de Eclipse + ADT) mientras realiza el cambio y debería ver qué está tomando tiempo.

No tengo la respuesta exacta para su pregunta, pero sólo 2 recomendaciones:

1) Asegúrese de escalar la imagen primero antes de dibujar.

2) El uso de RelativeLayout hace que su ViewGroup mida a sus hijos dos veces en lugar de uno. Así que asegúrese de que usted no hace nada que desencadenar re-layout en eventos de clic

3) Sugiero que ponga estos Ver en un GridView o GridLayout y luego cuando usted necesita para intercambiar sus puntos de vista, basta con cambiar las posiciones de su vista en un dato (Array, por ejemplo), y llamar a notifyDataSetChanged (); Espero que esto ayude

Aparentemente, el tamaño de la imagen puede afectar a la velocidad. Así que lo que hice fue volver a clasificar mi imagen. Hice esto en la tienda de la foto, pero usted puede hacerlo en paint o usted puede hacerlo en un Web site de la imagen-re sizer. Solo busca eso en google, e ingresa las dimensiones 56 x 56 . Por alguna razón, esas dimensiones funcionan mejor.

Aquí hay una herramienta de resizer de imagen:

http://www.picresize.com/

En este sitio web, sólo tiene que seleccionar su imagen de su computadora, y luego la siguiente pantalla le dirá para cambiar el tamaño: Introduzca aquí la descripción de la imagen

Para hacerlo en paint :

Introduzca aquí la descripción de la imagen

Aunque la recompensa ha terminado, acabo de publicar esto para ayudar a la gente a saber cómo hacerlo. TODAVÍA NO SÉ POR QUÉ ES IMPORTANTE EL TAMAÑO DE LA IMAGEN Yo realmente apreciaría si alguien explicara por qué debo arreglar el tamaño de la imagen, aunque sé cómo .

Gracias,

Excepción de puntero nulo

  • Android y su lenta webview. Hardware acelerado es buggy
  • Diseño complejo de Android lineal y relativo
  • Vista personalizada de Android delegado de grupo addView
  • Rendimiento de animación de propiedades sobre animaciones de vista
  • Cómo mejorar el rendimiento de la representación de ping-pong (para desenfoque) en OpenGL ES
  • ¿Por qué el tipo primitivo corto es significativamente más lento que largo o int?
  • Cómo configurar el color de fondo para Textview de forma programática para otro archivo xml?
  • Recuperar mediante programación los datos de uso de la red de etiquetas en Android
  • ClipToBounds para niños Vistas dentro de LinearLayout android
  • Los subprocesos predeterminados de Android y su uso
  • La aplicación de Android comienza muy lentamente en el primer lanzamiento, pero normalmente en los próximos lanzamientos
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.