Quiero saber qué recurso dibujable se utiliza al ejecutar la aplicación que es de ldpi, mdpi, hdpi o xhdpi.¿Cómo saber qué recurso drawble se usa?
Respuesta
Usted debe ser capaz de obtener propiedades de la pantalla de su dispositivo como se describe here y, posteriormente, determinar qué se utilizan los recursos en tiempo de ejecución comparando el resultado en contra de esta lista:
- LDPI: pantallas de baja densidad; aproximadamente 120dpi.
- mdpi: Pantallas de densidad media (en HVGA tradicional); aproximadamente 160 ppp.
- hdpi: Pantallas de alta densidad; aproximadamente 240 ppp.
- xhdpi: Pantallas de alta densidad extra; aproximadamente 320 ppp. Agregado en API Nivel 8
- nodpi: Esto se puede utilizar para recursos de mapa de bits que no desea escalar para que coincidan con la densidad del dispositivo.
- tvdpi: pantallas en algún lugar entre mdpi y hdpi; aproximadamente 213 ppp. Esto no se considera un grupo de densidad "primario". Está destinado principalmente para televisores y la mayoría de las aplicaciones no deberían necesitarlo, ya que proporcionar recursos de mdpi y hdpi es suficiente para la mayoría de las aplicaciones y el sistema las escalará según corresponda. Este calificador se introdujo con el nivel API 13.
partir de esta información se puede deducir lo siguiente, que también podría ser relevante para su pregunta:
No es un 3: escala 8: 4: 6 relación entre las cuatro densidades primarias (ignorando la densidad de tvdpi). Entonces, un mapa de bits 9x9 en ldpi es 12x12 en mdpi, 18x18 en hdpi y 24x24 en xhdpi.
Ésta no es una respuesta exacta, pero ¿ha echado un vistazo a: http://developer.android.com/guide/practices/screens_support.html
LDPI: Recursos de baja densidad (LDPI) pantallas (~ 120 ppp)
mdpi: Recursos para la densidad media (MDPI) pantallas (~ 160dpi)
IPAP: Recursos para alta densidad (IPAP) pantallas (~ 240 ppp)
xhdpi: Recursos para alta densidad extra (xhdpi) pantallas (~ 320dpi)
Estos son generales directrices, y no será perfecto, pero es un buen comienzo.
Podemos determinar esto conociendo la densidad de la pantalla del dispositivo.
getResources().getDisplayMetrics().densityDpi
Será ya sea DENSITY_LOW, DENSITY_MEDIUM o DENSITY_HIGH.
Abra el archivo xml de la carpeta de diseño. En la parte inferior, encontrará la pestaña de diseño gráfico. Allí podrá ver una vista gráfica de su archivo xml. En la esquina superior izquierda, seleccione una resolución diferente-diferente para la que desee probar dibujable. Actualizará la vista en consecuencia.
Aquí hay un código de muestra para encontrarlo. Simplemente coloque algunos dibujos diferentes en diferentes carpetas y verifique qué imagen recoge el dispositivo automáticamente.
usted tiene que conseguir primero la densidad de su dispositivo.
int density= getResources().getDisplayMetrics().densityDpi;
switch(density)
{
case DisplayMetrics.DENSITY_LOW:
Toast.makeText(context, "LDPI", Toast.LENGTH_SHORT).show();
break;
case DisplayMetrics.DENSITY_MEDIUM:
Toast.makeText(context, "MDPI", Toast.LENGTH_SHORT).show();
break;
case DisplayMetrics.DENSITY_HIGH:
Toast.makeText(context, "HDPI", Toast.LENGTH_SHORT).show();
break;
case DisplayMetrics.DENSITY_XHIGH:
Toast.makeText(context, "XHDPI", Toast.LENGTH_SHORT).show();
break;
}
- 1. ¿Cómo saber qué variable de Union se usa?
- 2. Cómo saber si se usa glibc
- 3. Averiguar si se usa el recurso
- 4. ¿Cómo saber por qué no se genera el archivo "R" (recurso)?
- 5. cómo saber qué archivo xib usa la imagen?
- 6. cómo saber si se usa un índice alguna vez
- 7. ¿Cómo puedo saber cuánto espacio usa TFS?
- 8. ¿por qué se usa osgi?
- 9. Cómo saber cuánta gente usa mi software
- 10. ¿Cómo saber qué tecla SHIFT se presionó?
- 11. ¿Cómo saber qué aplicación JAXB se utiliza?
- 12. ¿Para qué se usa + =?
- 13. ¿Cómo se usa Resources.getFraction()?
- 14. ¿Qué es GenericParameterHelper y cómo se usa?
- 15. io_service, ¿por qué y cómo se usa?
- 16. ¿Para qué se usa Django?
- 17. ¿Por qué se usa suhosin?
- 18. ¿Cómo se usa Elastic Net?
- 19. mso - cómo se usa
- 20. ¿Qué es LiteralControl? ¿Por qué se usa?
- 21. ¿Por qué se usa console.log? ¿Qué hace?
- 22. ¿Cómo se usa CTEST_CUSTOM_PRE_TEST?
- 23. ¿Cómo puedo saber cuánto espacio iCloud usa mi aplicación?
- 24. ¿Cómo se usa NSDecimalNumber?
- 25. ¿Por qué se usa gridview: true y qué significa?
- 26. ¿Cómo puedo saber si mi aplicación PHP usa demasiada memoria?
- 27. ¿Cómo se usa gdb?
- 28. ¿Cómo saber qué espera mach_msg_trap?
- 29. ¿Cómo puedo saber si Matlab está ocupado cuando usa GUI?
- 30. ¿Cómo se usa `to_sql` en AREL cuando se usa` average() `?
[Tener un vistazo a este post] (http://stackoverflow.com/a/4766229/593709) –
terminé creando una aplicación para eso hace algún tiempo: https://play.google. com/store/apps/details? id = com.roysolberg.android.developertools –