Combining Screen Size and Density Files

Something is really wrong with Android.

I have one device with "Normal screen and MDPI" (LG Optimus 2X P990) I have one device with "Normal scren and XHDPI" (Samsung Galaxy S3)

I try to have all layouts in one folder for all views. If I change color / text / everything in one view it will be displayed globally. To have a value like "Color" that needs to be positioned in all the different layouts, I have to change all the files when I change something with such rudimentary color or text. Then, in each "value-normal, values-xhdpi, values-large" I set all the settings unique to this device.

Example "values-normal"

<dimen name="text_small">10sp</dimen>


Example "values-xhdpi":

<dimen name="text_small">4sp</dimen>


Example "values":

<dimen name="view_textview_title">@dimen/text_small</dimen>


Currently, the MDPI device does not load values ​​from the Values ​​folder only if they are added to Values-Normal, and the XHDPI device does not load values-xhdpi if there is a normal folder.

Well, at least I can't optimize the app for two different devices. What's wrong.

Reason: I read that the "Normal" folder overrides the "XHDPI" folder for a regular display device with XHDPI density. But in order to be able to see the header text, I need to set the text in XHDPI text size to about "4s", and in "Normal" with MDPI to "10s".

Higher density will multiply the value more, lower - less. I'm right? Then in this way there is no way to optimize the application for two different devices with a change in density. Every screen size with its density size requires its text size.

So my question is the following:

Is it possible to combine "values-xhdpi-normal" "values-mdpi-normal", "values-hdpi-normal" and such?

Otherwise, I have to make the app ugly on some devices and look good on some. I like it, probably the one I like better, don't use "TextSize = 10" all over the page. The title is the name, the larger, the menu is the menu, the smaller the text, the descriptions in the menu are even less. There you go.

The reason I'm asking is that I don't want to reset the current layout, if that is not possible, works too much for nothing, and Eclipse is buggy enough, with it a productive approach is to add one line just to force reinstall when the library changed or restarted the whole environment to realize that something has changed - especially with the values!


source to share

All Articles