Lukap
Lukap

Reputation: 31963

is the screen from this device belongs to ldpi (or mdpi or hdpi) density?

I want to write a function like this

public boolean isThisScreenWithHdpiDensity(){
    return true/false;
}

but I do not know how to calculate this at run time programmatic-ally

Upvotes: 1

Views: 650

Answers (2)

hp.android
hp.android

Reputation: 2824

      public boolean isThisScreenWithHdpiDensity()
      {         
         DisplayMetrics metrics = new DisplayMetrics();
         getWindowManager().getDefaultDisplay().getMetrics(metrics);

         if(metrics.density == DisplayMetrics.DENSITY_HIGH)
         {
             return true;
         }

         return false;
      }

Upvotes: 2

Sandy
Sandy

Reputation: 6353

Use this inside your function:

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
switch(metrics.densityDpi){
     case DisplayMetrics.DENSITY_LOW:
                break;
     case DisplayMetrics.DENSITY_MEDIUM:
                 break;
     case DisplayMetrics.DENSITY_HIGH:
                 break;
}

Upvotes: 8

Related Questions