venerdì 22 marzo 2013

Android - ottenere le dimensioni generiche dello schermo e la densità dei pixel

Densita dei pixel :
 public int getPixelDensity(Context ctx)

     { 

switch (ctx.getResources().getDisplayMetrics().densityDpi) { case DisplayMetrics.DENSITY_XHIGH: Toast.makeText(ctx, "Desity XHigh - XHDPI",          Toast.LENGTH_LONG) .show();
     break; 
case DisplayMetrics.DENSITY_HIGH: 
      Toast.makeText(ctx, "Desity High - HDPI", Toast.LENGTH_LONG) .show(); break; case DisplayMetrics.DENSITY_MEDIUM: 
      Toast.makeText(ctx, "Desity Medium - MDPI", Toast.LENGTH_LONG) .show();           
     break; 
case DisplayMetrics.DENSITY_LOW:
     Toast.makeText(ctx, "Desity High - LDPI", Toast.LENGTH_LONG) .show(); break;     
     default: break; 
     } 
     return ctx.getResources().getDisplayMetrics().densityDpi; } 


Dimensioni generiche dello schermo : 

public int getScreenSize(Context ctx) { 

  if ((ctx.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE) {
     Toast.makeText(ctx, "XLarge screen", Toast.LENGTH_LONG).show(); }
  else if ((ctx.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) { Toast.makeText(ctx, "Large screen", Toast.LENGTH_LONG).show(); }
 else if ((ctx.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL) { Toast.makeText(ctx, "Normal sized screen", Toast.LENGTH_LONG) .show(); } 
else if ((ctx.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_SMALL) { Toast.makeText(ctx, "Small sized screen", Toast.LENGTH_LONG) .show(); } 
else 
{ Toast.makeText(ctx, "Screen size is neither large, normal or small", Toast.LENGTH_LONG).show(); } 
return Configuration.SCREENLAYOUT_SIZE_MASK; }

Nessun commento:

Posta un commento