manojvemuru
manojvemuru

Reputation: 11

How to support different screen size and different screen resolutions in android

I'm developing an application in android and I have to support all different screen sizes and densities like lower and medium and higher

Upvotes: 0

Views: 861

Answers (2)

Dipak Keshariya
Dipak Keshariya

Reputation: 22291

Write Below Code into your Androidmanifest.xml file

<supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true" />

Upvotes: 1

Yogesh Somani
Yogesh Somani

Reputation: 2624

To develop an application which supports every density and resolution, we should keep following points in mind:

(1) Put different sized images(with the same name) in 4 different folders in the ratio:

ldpi : mdpi : hdpi : xhdpi = 3 : 4 : 6 : 8

(2) The sizes commonly used for these resolutions are:

ldpi = 36 * 36 px mdpi = 48 * 48 px hdpi = 72 * 72 px xhdpi = 96 * 96 px

But you can use your desired sizes for the images as well.(Just try to follow the ratio in different sizes as well.) Amongst of all these images, the image which suits the device's density , will automatically be picked.

(3) Besides this, you can also get the density of the device programmatically and set the layout accordingly, like this:

   DisplayMetrics displayMetrics = new DisplayMetrics();
   getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
   switch(displayMetrics.densityDpi){ 
    case DisplayMetrics.DENSITY_LOW: 
        // layout for small sized devices.
        break; 
    case DisplayMetrics.DENSITY_MEDIUM: 
        // layout for medium-sized devices.
        break; 
    case DisplayMetrics.DENSITY_HIGH: 
        // layout for big-sized devices.
        break; 
   }  

Upvotes: 2

Related Questions