I have a "dashboard" menu that works great on Android. It has eight ImageViews and works just as I need it.
-------------------
| | |
| 1 | 2 |
-------------------
-------------------
| | |
| 3 | 4 |
-------------------
-------------------
| | |
| 5 | 6 |
-------------------
-------------------
| | |
| 7 | 8 |
-------------------
I use 8 different images at a very high resolution so that they look good everywhere. I don't include any of them in different dpi folders. I just have one large resolution that all screen sizes pick up. Is this bad practice? Should I really have different sized images for each?
Is this bad practice?
If it looks good at all screen densities (and sizes that you are supporting), this is perfectly fine. Only you can make that determination.
As I note in another answer, the issue is the automatic resampling, and the resulting quality.
First, screen densities keep increasing. We have -xxhdpi
devices now (e.g., Droid DNA). However, -xxhdpi
was a relatively recent addition to the SDK. If your icons are -xhdpi
, they will be upsampled for -xxhdpi
, and that could be problematic. At the moment, -xxhdpi
devices are extremely few in number, though, so this may not matter for the moment. However, if you are only supplying, say, -mdpi
images, Android will need to upsample for -hdpi
on up, once again likely causing artifacts.
Downsampling is more likely to have decent results, compared with upsampling. However, it is not an absolute guarantee of quality, particularly as you go through several levels (e.g., downsampling -xhdpi
to -ldpi
).
Custom-crafting images for other densities give you absolute control over quality, at the cost of development time and APK size.