android - solucion - phones
Cómo encontrar el dispositivo como LDPI MDPI HDPI o XHDPI (2)
Editar: use DisplayMetrics
para obtener la densidad de la pantalla
getResources().getDisplayMetrics().densityDpi;
esto devolverá el valor int que representa las siguientes constantes. DisplayMetrics.DENSITY_LOW ,DisplayMetrics.DENSITY_MEDIUM, DisplayMetrics.DENSITY_HIGH, DisplayMetrics.DENSITY_XHIGH
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;
}
Esto devolverá las siguientes constantes basadas en esto puede identificar el dispositivo
Prueba esto
int screenSize = getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK;
switch(screenSize) {
case Configuration.SCREENLAYOUT_SIZE_LARGE:
Toast.makeText(this, "Large screen",Toast.LENGTH_LONG).show();
break;
case Configuration.SCREENLAYOUT_SIZE_NORMAL:
Toast.makeText(this, "Normal screen",Toast.LENGTH_LONG).show();
break;
case Configuration.SCREENLAYOUT_SIZE_SMALL:
Toast.makeText(this, "Small screen",Toast.LENGTH_LONG).show();
break;
default:
Toast.makeText(this, "Screen size is neither large, normal or small" , Toast.LENGTH_LONG).show();
}
Fuente de identificación de resoluciones de pantalla
Esta pregunta ya tiene una respuesta aquí:
Sin ningún fragmento de código para la aplicación, cómo obtener la resolución y la longitud de la pantalla. ¿Cómo puedo encontrar si el dispositivo es ldpi, mdpi, hdpi o xhdpi?
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int density = dm.densityDpi;
La variable de densidad es una constante definida en DisplayMetrics correspondiente a los diferentes dpis.