What is the difference between Bitmap and Drawable in Android?

I googled but i couldn't find any article to describe about the difference between Bitmap and Drawable in Android.


A Bitmap is a representation of a bitmap image (something like java.awt.Image). A Drawable is an abstraction of "something that can be drawn". It could be a Bitmap (wrapped up as a BitmapDrawable), but it could also be a solid color, a collection of other Drawable objects, or any number of other structures.

Most of the Android UI framework likes to work with Drawable objects, not Bitmap objects. A View can accept any Drawable as a background. An ImageView can display a foreground Drawable. Images stored as resources are loaded as Drawable objects.


Drawable is something which can be drawn. E.g. layout, vector image (line, circle), font, image and so on

Bitmap - is specific type of Drawable which is image, like: PNG, JPEG or so