Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android hdpi/mdpi/ldpi for Values folder?

Tags:

Android allows us to define hdpi/mdpi/ldpi for the drawable folder in order to account for different sized screens/devices. I was wondering if that same support can be applied for the Values folder (or even the layout folder)? Reason being, I typically define a "sizes.xml" file which holds standard dp sizes that I apply to margins and paddings. I also do the same for sp sizes for text. I'd like to adjust those values based on the phones dpi.

like image 976
Jay Soyer Avatar asked Mar 09 '12 18:03

Jay Soyer


People also ask

How do I make a drawable Xxhdpi folder?

Simply go to project Explorer and change your View from Android to project from drop Down and you are good to go. There you can simply create folder like we do in Eclipse. And in android project view it is hidden but when you switch to project. You can create folder like drawable-hdpi,drawable-xhdpi .

What is dimens XML in Android?

dimens. xml is used for defining the dimensions for different widgets to be included in the Android project.

What is Xhdpi?

xhdpi Resources for extra high-density (xhdpi) screens (~320dpi). nodpi Resources for all densities. These are density-independent resources.


2 Answers

Yes, you can. Just like this:

res/values/dimens.xml(default) res/values-ldpi/dimens.xml   (240x320 and nearer resolution) res/values-mdpi/dimens.xml   (320x480 and nearer resolution) res/values-hdpi/dimens.xml   (480x800, 540x960 and nearer resolution) res/values-xhdpi/dimens.xml  (720x1280 - Samsung S3, Micromax Canvas HD, etc)  res/values-xxhdpi/dimens.xml (1080x1920 - Samsung S4, HTC one, etc) res/values-large/dimens.xml  (480x800)  res/values-large-mdpi/dimens.xml (600x1024) res/values-sw600dp/dimens.xml  (600x1024) res/values-sw720dp/dimens.xml  (800x1280) res/values-xlarge-xhdpi/dimens.xml (2560x1600 - Nexus 10") res/values-large-xhdpi/dimens.xml  (1200x1920 - Nexus 7"(latest)) 

(from: http://wiki.jikexueyuan.com/project/android-actual-combat-skills/multi-resolution-adapting-common-directory.html Warning: the link is chinese!!! To translate, right click on the page, click "translate to English" in the popup menu.)

like image 132
Kai Wang Avatar answered Sep 19 '22 13:09

Kai Wang


Yes, I believe anything in the res/ folder can use "Configuration Qualifiers". So for example, you can have a values-sw600dp-mdpi-land/ folder.

See "Using Configuration Qualifiers": http://developer.android.com/guide/practices/screens_support.html#qualifiers

I first noticed this by looking at Google's IOSched app sample code, look at the res folder: https://github.com/google/iosched/tree/master/android/src/main/res

You'll see that they have "values-sw600dp-land", "values-w400dp" and "values-v17" folders, just to name a few.

like image 22
Sam Dozor Avatar answered Sep 17 '22 13:09

Sam Dozor