Last active
March 25, 2016 21:29
-
-
Save jcordeiro/9578050 to your computer and use it in GitHub Desktop.
Determines device screen size(small, normal, etc) and screen density (ldpi, mdpi, etc) and displays result in a Toast
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Determine screen density | |
DisplayMetrics metrics = new DisplayMetrics(); | |
getWindowManager().getDefaultDisplay().getMetrics(metrics); | |
int density = metrics.densityDpi; | |
if (density == DisplayMetrics.DENSITY_TV) { | |
Toast.makeText(this, "DENSITY_TV... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_XXXHIGH) { | |
Toast.makeText(this, "DENSITY_XXXHIGH... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_XXHIGH) { | |
Toast.makeText(this, "DENSITY_XXHIGH... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_XHIGH) { | |
Toast.makeText(this, "DENSITY_XHIGH... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_HIGH) { | |
Toast.makeText(this, "DENSITY_HIGH... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_MEDIUM) { | |
Toast.makeText(this, "DENSITY_MEDIUM... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else if (density == DisplayMetrics.DENSITY_LOW) { | |
Toast.makeText(this, "DENSITY_LOW... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} | |
else { | |
Toast.makeText(this, "Density is neither HIGH, MEDIUM OR LOW. Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Determine screen size | |
if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) { | |
Toast.makeText(this, "Large screen",Toast.LENGTH_LONG).show(); | |
} | |
else if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL) { | |
Toast.makeText(this, "Normal sized screen" , Toast.LENGTH_LONG).show(); | |
} | |
else if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_SMALL) { | |
Toast.makeText(this, "Small sized screen" , Toast.LENGTH_LONG).show(); | |
} | |
else { | |
Toast.makeText(this, "Screen size is neither large, normal or small" , Toast.LENGTH_LONG).show(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Rather than place this file into the project, you could just copy & paste this into your MainActivity's onCreate method, to display a toast when you launch the application. I would only run half (i.e either the screen size, or the density) at a time because other wise you would have 2 toasts running simultaneously.