ofirbt
ofirbt

Reputation: 1886

Supporting all Android tablets resolutions

The designer of our company wants me to give him the resolutions of Android tablets so he will start designing a new app.

I know there are a lot of different resolutions (listed here: Android Tablets computers). I also know about the division of Android to the different dpi's (ldpi, mdpi, ...).

My questions :

  1. What should I tell the designer? He obviously not supposed to make a version for each resolution. Besides, some of the resolutions listed in the link above are in the same dpi, so which one should I choose?
  2. Considering the fact the app is going to run only on tablets, what are the dpi classes I should use? Only hdpi and xhdpi? Or should I still use all 4 classes and limit the <supports-screens> tag in the manifest?
  3. Is there a resolution that represent each of the dpi classes that I should stick to?
  4. I've done some reading about 9-patch. What's the point of using it if I still need to deliver a version for each dpi??

Thanks in advance!

Upvotes: 4

Views: 3544

Answers (2)

faylon
faylon

Reputation: 7440

The questions contain so much information.

1 Try to read the article and the references in it.

http://www.androiduipatterns.com/2011/11/design-patterns-for-responsive-android.html

You could also have a look at the web site for android design.

http://developer.android.com/design/index.html

In one word, designing for android tablets is more like designing websites. You cannot just design for one resolution.

2 Considering you are developing for tablets, it's necessary to support mdpi and hdpi. If the apps could be installed on phones, maybe xhdpi is also needed. It's not very strict.

3 dpi(dots per inch) = pixels per inch. So dpi is like density, it do not have strict relationship with resolution. But there is still a sheet could help you, try to find it in the following page

http://developer.android.com/guide/practices/screens_support.html

4 9-patch resource is very useful. With which a small png could stretch to any size without distortion. And it could also help to reduce the size of your resources.

In most situation, you do not have to make 9-patch for each dpi, since it could stretch to any size you want. But if the 9-patch png contain some information itself, like min height and padding, it's necessary to make different versions.

Upvotes: 1

njzk2
njzk2

Reputation: 39386

Here is what I would do:

  • See what combinations you have. There are mostly 3 resolutions for tablets (1280x800, 1024x600, 800x480) and mostly 2 densities (hdpi and mdpi). That is at most 6 versions. Select a few matching your most logical targets (I would choose xlarge mdpi (9" 1280x800), large mdpi (7" 1024x600) and normal-hdpi (4-5" 800x480) and design on these.

  • Some graphical elements don't need to be designed for each combinations, like backgrounds, may be buttons… Here comes the 9-patch. To be put in drawable-nodpi folder. One resource fits all.

  • Do one version first on you major target, then see how it fits on the other targets, and consider adjustments from there.

  • Use ScrollViews if you don't want to position every item pixel-perfectly on each device.

Upvotes: 0

Related Questions