Avisos

Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 25/07/13, 13:11:00
Array

[xs_avatar]
Androidsc Androidsc no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2013
Mensajes: 20
Tu operador: Movistar

Resoluciones

Buenas,

Hace poco termine mi primera aplicacion, pero cuando la he ido a probar en diferentes moviles de familiares y amigos me he dado cuenta de que la aplicacion descuadra en la mayoria de los casos.

Mi app contiene bastantes imágenes y la he hecho utilizando el drawable-hdpi y mdpi (en una proporción 1.5 - 1) pero aun así dentro de esas resoluciones algunas son un poco mayor o un poco menor y me descuadran.

¿Como hacéis para que las aplicaciones se adapten a todas las resoluciones del mercado?



Un saludo y muchisimas gracias de antemano

Última edición por Androidsc Día 25/07/13 a las 13:29:19.
Responder Con Cita


  #2  
Viejo 27/07/13, 16:31:28
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
tienes que crear los drawables en 4 formatos ldpi - mdpi - hdpi - xhdpi . Además tendrás que diseñar los layouts de tal manera que los textos y demás partes de la interfaz se puedan ver bien en las distintas pantallas. Si usas eclipse tienes el modo gráfico donde puedes utilizar distintas pantallas y suponer como se vería. Un saludo.
Responder Con Cita
  #3  
Viejo 27/07/13, 19:30:12
Array

[xs_avatar]
Androidsc Androidsc no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2013
Mensajes: 20
Tu operador: Movistar

Vaya locura, es un poco complicado, ¿no?

¿Como lo soléis hacer? ¿Primero hacéis la app entera para mdpi y luego adaptáis el resto? ¿Que proporciones utilizáis?

He leído por Internet que la gente calcula las densidades de pantalla, ¿Lo utilizais para vuestras app?

Muchas gracias por responder, saludos!!

Última edición por Androidsc Día 27/07/13 a las 20:13:23.
Responder Con Cita
  #4  
Viejo 27/07/13, 19:31:28
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
Responder Con Cita
  #5  
Viejo 27/07/13, 23:09:11
Array

[xs_avatar]
Androidsc Androidsc no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2013
Mensajes: 20
Tu operador: Movistar

 Cita: Originalmente Escrito por Carlosdelachica Ver Mensaje
Gracias!

Cual es el método que utilizas tu compañero?

saludos
Responder Con Cita
  #6  
Viejo 27/07/13, 23:10:28
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
 Cita: Originalmente Escrito por Carlosdelachica Ver Mensaje
tienes que crear los drawables en 4 formatos ldpi - mdpi - hdpi - xhdpi . Además tendrás que diseñar los layouts de tal manera que los textos y demás partes de la interfaz se puedan ver bien en las distintas pantallas. Si usas eclipse tienes el modo gráfico donde puedes utilizar distintas pantallas y suponer como se vería. Un saludo.
Este
Responder Con Cita
  #7  
Viejo 27/07/13, 23:18:29
Array

[xs_avatar]
Androidsc Androidsc no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2013
Mensajes: 20
Tu operador: Movistar

 Cita: Originalmente Escrito por Carlosdelachica Ver Mensaje
Este
Pero haces primero un drawable en concreto o los cuatro simultaneamente?
Responder Con Cita
  #8  
Viejo 27/07/13, 23:19:19
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
no entiendo lo que me preguntas
Responder Con Cita
  #9  
Viejo 28/07/13, 01:47:14
Array

[xs_avatar]
Androidsc Androidsc no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2013
Mensajes: 20
Tu operador: Movistar

En realidad lo que me interesa saber es por cual de todos los drawable que me comentaste (ldpi - mdpi - hdpi - xhdpi) empiezas a diseñar la aplicación y cual es la proporcion que aplicas entre ellos (75%-100%-150%-200%)?

saludos y gracias!!
Responder Con Cita
  #10  
Viejo 28/07/13, 15:50:46
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
lo que haces es referir al archivo y Android automáticamente elige el drawable correspondiente. Los tamaños varían según el tipo de icono o imagen, en la documentación tienes mucha informacion sobre el tema.
Responder Con Cita
  #11  
Viejo 30/07/13, 10:28:28
Array

[xs_avatar]
Marciano Verde Marciano Verde no está en línea
Miembro del foro
 
Fecha de registro: mar 2013
Mensajes: 65
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Movistar
Pero a ver... no solo es una cuestión de resolución, los diferentes móviles también tienen proporciones (ancho-largo) diferentes... ¿como se resuelve esto?.
Responder Con Cita
  #12  
Viejo 30/07/13, 10:53:30
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

 Cita: Originalmente Escrito por Marciano Verde Ver Mensaje
Pero a ver... no solo es una cuestión de resolución, los diferentes móviles también tienen proporciones (ancho-largo) diferentes... ¿como se resuelve esto?.
Usando interfaces que se adapten automáticamente, usando RelativeLayout para que los elementos ocupen toda la pantalla, usando scroll cuando algo no quepa en vertical, etc.

Realmente no hay tantas proporciones, básicamente panorámico (16:9, 16:10) y no-panorámico (4:3, 5:4).

Supuesto que mantengas fijo el ancho a la hora de diseñar, lo que cambia en las proporciones es la altura. En muchas apps con poner scroll es suficiente.

En un juego por ejemplo no vale lo del scroll normalmente porque quieres llenar la pantalla y que se vea todo. Ahí ya hay más estrategias, como que el área de juego sea 4:3 y el resto sea "de relleno" (si cabe se muestra, si no se corta y no pasa nada).
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #13  
Viejo 30/07/13, 10:59:07
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Trabajando con DPI y RelativeLayout.

Haciendo esto los móviles que tengan proporciones estándar de PPI funcionarán perfectos, en el resto se verá un poco diferente.

Por ejemplo, yo sólo trabajo con un Layout único para todos los tamaños (todos en Portrait). En todos los móviles con PPI estándar según su tamaño se me ve perfecto, pequeños, grandes, incluso tablets.

Pero por ejemplo uno de los móviles que tengo para depurar es un HTC One S, que es HDPI pero tiene un PPI de 256, cuando el estándar es de 240. Lo que ocurre es que todo se ve un poco más pequeño que en el resto de móviles, sobre todo la letra.

Y en cuanto a las imágenes, igual, puedes usar sólo XHDPI y se autoreducen de tamaño, y al ser interpolación negativa no se nota. Lo único es que te ocupará un poco más de memoria (no mucha) por tener que hacer la conversión, pero como ganancia el APK ocupará muchísimo menos (no tienes la misma imagen repetida 4 veces). Además que ya desde JB también existe el XXHDPI y está preparado (aún no hay ningún móvil que lo soporte, pero el sistema ya está preparado) el XXXHDPI.

EDIT: Se me adelantó mocelet
Responder Con Cita
  #14  
Viejo 30/07/13, 11:24:07
Array

[xs_avatar]
Carlosdelachica Carlosdelachica no está en línea
Miembro del foro
 
Fecha de registro: may 2013
Mensajes: 97
Modelo de smartphone: Samsung Galaxy S III
Tu operador: Movistar
 Cita: Originalmente Escrito por mocelet Ver Mensaje
Usando interfaces que se adapten automáticamente, usando RelativeLayout para que los elementos ocupen toda la pantalla, usando scroll cuando algo no quepa en vertical, etc.

Realmente no hay tantas proporciones, básicamente panorámico (16:9, 16:10) y no-panorámico (4:3, 5:4).

Supuesto que mantengas fijo el ancho a la hora de diseñar, lo que cambia en las proporciones es la altura. En muchas apps con poner scroll es suficiente.

En un juego por ejemplo no vale lo del scroll normalmente porque quieres llenar la pantalla y que se vea todo. Ahí ya hay más estrategias, como que el área de juego sea 4:3 y el resto sea "de relleno" (si cabe se muestra, si no se corta y no pasa nada).
Amén.
Responder Con Cita
  #15  
Viejo 04/11/13, 19:13:05
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Buenas.

Respecto a este tema hay una cosa que no me cuadra si no usamos diferentes layouts y ponemos RelativeLayouts y medidas en dp como dice Kriogen en un solo layout :

Un Samsung Galaxy S3 tiene 306 PPI ( resolución XHDPI) con 720 pixels de ancho. Usando medidas dps serian 1.9125 pixles = 1dp con lo cual si pongo un boton que me ocupe toda la anchura de pantalla serian 374 dps.

Si uso el android Virtual device manager y seleccion un terminal con resolucion mdpi (160PPI) de los que aparecen por defecto nos encontramos con que tiene una resolucion de 320x480 pixels . Teniendo en cuenta que 1 pixel = 1 dp para resoluciones mdpi , nos encontramos que un boton que ocupe toda la anchura tendria 320 dps con lo cual la medida "dp" en un terminal ya no es igual a la del otro y todo queda descompensado !!!!

Si hay que hacer el diseño para terminales de este tipo basandonos en dps y RelativeLayouts no cuadra.

Al menos es lo que me pasa a mi cuando depuro en mi GalaxyS3 y luego lo hago con un terminal del AVDM como el indicado antes.. que queda todo descuadrado.

Un saludo.

Última edición por manolazo Día 04/11/13 a las 19:15:15.
Responder Con Cita
  #16  
Viejo 04/11/13, 20:39:03
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
 Cita: Originalmente Escrito por manolazo Ver Mensaje
Buenas.

Respecto a este tema hay una cosa que no me cuadra si no usamos diferentes layouts y ponemos RelativeLayouts y medidas en dp como dice Kriogen en un solo layout :

Un Samsung Galaxy S3 tiene 306 PPI ( resolución XHDPI) con 720 pixels de ancho. Usando medidas dps serian 1.9125 pixles = 1dp con lo cual si pongo un boton que me ocupe toda la anchura de pantalla serian 374 dps.

Si uso el android Virtual device manager y seleccion un terminal con resolucion mdpi (160PPI) de los que aparecen por defecto nos encontramos con que tiene una resolucion de 320x480 pixels . Teniendo en cuenta que 1 pixel = 1 dp para resoluciones mdpi , nos encontramos que un boton que ocupe toda la anchura tendria 320 dps con lo cual la medida "dp" en un terminal ya no es igual a la del otro y todo queda descompensado !!!!

Si hay que hacer el diseño para terminales de este tipo basandonos en dps y RelativeLayouts no cuadra.

Al menos es lo que me pasa a mi cuando depuro en mi GalaxyS3 y luego lo hago con un terminal del AVDM como el indicado antes.. que queda todo descuadrado.

Un saludo.
Trabajando en anchura es donde precisamente el DP cuadra perfectamente, salvo que el móvil no tenga resolución estándar y entonces varía un poco (como me pasa por ejemplo a mi con el HTC One S que es el que uso para depurar en el trabajo, que tiene 540 para una medida que el estándar es 480).

Donde no cuadran es en altura, y entonces aquí una de dos, o usas ScrollView o creas un Layout diferente.

Todos los móviles Android de resolución estándar (Normal Screen) tienen 320 dpi de ancho (En el caso del HTC One S tiene 360 dpi, pero repito, porque no es estándar).

Pero el tema de móviles con resoluciones no estándar tampoco lo arreglas con diferentes Layouts, ya que sería igualmente HDPI Normal Screen, aunque sea de 320 dpi o de 360 dpi. Lo mejor es no obsesionarse mucho, y pensar siempre en la forma más optima de distribuir en la pantalla. Por ejemplo, si quieres crear 3 botones de igual tamaño no los hagas cada uno de 320/3, crea un LinearLayout Horizontal con un Weight de 1 para cada botón.

Última edición por kriogeN Día 04/11/13 a las 20:42:43.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 20:10:40 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /