Shreyash Mahajan
Shreyash Mahajan

Reputation: 23606

How to calculate the Resolution According to some specific resolution?

In My Application i have One button like this :

enter image description here

The Resolution of that button is 192x32. And when i put this button in to drawable-mdpi, it seems good to layout. Now for other screen resolution for multiple screen support which size of button i have to make to see the Good Layout Design according to other Devices screen ? I mean for drawable-ldpi and drawable-hdpi, which resolution i have to make for this button ? How to do Such calculation for to make this button size to fit for all the screen size ? Please help me for this. Thanks.

Upvotes: 1

Views: 457

Answers (2)

Balaji.K
Balaji.K

Reputation: 4829

No need to create multiple buttons for multiple screen support. Instead create a single button and set the width and height at run time.This is achieved by getting the display width and height. Use the bellow code to get the display H & W values.

Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth();
int height = display.getHeight();

based in the above values set the button width and height at runtime.

Example:

Button bt=(Button)findViewById(R.id.button);
bt.setWidth(width);//screen width(fill_parent)
bt.setHeight(height/6);//1/6 of the screen height

The above code set the button width to screen(display) width size and height to 1/6 of the screen.

Upvotes: 1

JesusFreke
JesusFreke

Reputation: 20282

There is much information on this subject on the android developers website. In particular, there is a list of the various dpi levels and what range of DPIs that they correspond to.

Also, Rather than providing different images for different resolutions, you could make the image a nine-patch, and have it auto-magically expand to fit the button. Although if you want to keep the highlighting in the background proportional, it might be somewhat difficult to make it expand vertically.

Upvotes: 1

Related Questions