Android Studio: Drawable Folder: How to put Images for Multiple dpi?
AndroidAndroid StudioAndroid DrawableAndroid Problem Overview
Hi as per android documentation the drawable folder needs to have multiple sub-directories for images of different dpis. However in Android Studio creating any sub directory in the drawable folder causes it to fail to detect any images at all. On the other hand if an image is placed directly in the drawable folder it gets detected and becomes available for use view R.drawable.ImageName. In this case how do we use different dpi images for the same ImageName?
Android Solutions
Solution 1 - Android
The standard procedures are:
Solution 2 - Android
There are two ways of doing it.
1.Right click on drawable New->Image Asset-> select your highest resolution image rest will be created automatically. once you finish you can see different resolution inside drawable folder
- The way you want. on the project Explorer window you see a dropdown as Android. Click it change to project.
Now yourprojectname->app->src->main->res->
Aila You can see your drawable folders with hdpi mdpi etc.
Solution 3 - Android
You don't create subfolders of the drawable folder but rather 'sibling' folders next to it under the /res
folder for the different screen densities or screen sizes.
The /drawable
folder (without any dimension) is mostly used for drawables that don't relate to any screen sizes like selector
s.
See this screenshot (use the name drawable-hdpi
instead of mipmap-hdpi
):
Solution 4 - Android
The easiest way I have found to have the proper "directory" structure appear under the drawable folder for my icons is this:
- Right click "Drawable"
- Click on "New", then "Image Asset"
- Change "Asset Type" to "Action Bar and Tab Icons"
- For "Foreground" choose "ClipArt"
- For "Clipart" click and "Choose" button and pick any icon
- For "Resource Name" type in you icon file name
Now the pseudo-directories have been created for you under the Drawable folder in the Android view. Open up the true directories on your file system "main/res/drawable-xxhdpi", "main/res/drawable-xhdpi" and replace the icons in each folder with your own of the proper density.
Solution 5 - Android
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
.
Solution 6 - Android
simply copy and paste the image into res>drawable and it ask you destination folder which you want to pate resolution image for more help please look for https://stackoverflow.com/questions/28784593/android-studio-drawable-folders/31047059#31047059
Solution 7 - Android
In android studio you may see the following folder drawable xhdpi, drawable-hdpi, drawable-mdpi and more... You can put images of different dpi in these folder accordingly and android will take care which images should be draw according to the screen density of device.
NOTE: You have to put the images with the same name.
Solution 8 - Android
You need to access image IDs using R.mipmap.yourImageName
Solution 9 - Android
New -> Batch Drawable Import -> Click on Add button -> Select image -> Select Target Resolution, Target Name, Format -> Ok
Solution 10 - Android
- Right click "drawable"
- Click on "New", then "Image Asset"
- Change "Icon Type" to "Action Bar and Tab Icons"
- Change "Asset Type" to "Clip Art" for icon & "Image" for images
- For Icon: Click on "Clip Art" icon button & choose your icon
- For Image: Click on "Path" folder icon & choose your image
- For "Name" type in your icon / image file name
Solution 11 - Android
0
Right click "drawable" Click on "New", then "Image Asset" Change "Icon Type" to "Action Bar and Tab Icons" Change "Asset Type" to "Clip Art" for icon & "Image" for images For Icon: Click on "Clip Art" icon button & choose your icon For Image: Click on "Path" folder icon & choose your image For "Name" type in your icon / image file name
Solution 12 - Android
Simply upload image to any online tool converter that will convert your image to different dpi(s) and then download and copy and paste from downloaded dpi folders to Android dpi folders. For example, I have logo image to convert into different dpi(s), I searched in Google for online image converter into different dpi s, and then uploaded that imag and downloaded zip folder which contains different dpi folders, from which I copied one by one and pasted into same Android dpi folders. That is done...