My question is like title says: Why do we need 9-patch images? Are they really so important? Actually, what they really do? I don't get concept of 9-patch images clearly.
I know that 9-patch images are scalable. So let's say I have some image button which perfectly fits on my ldpi device. With Draw 9-patch tool (part of android SDK) I can mark scalable areas and this image will nicely fit on hdpi and even xhdpi devices. Edges will be nice and smooth.
But is this really good pratice or is just an alternative? Should i create every image for ldpi, mdpi, hdpi and xhdpi devices or can I just use Android SDK "Draw 9-patch" on one image and let Android handle various devices?
I'm not that concernet about edges, but the actual content of the picture. Is content scalable too?
The content is scalable, the edges will not be scaled, in typical usage.
They're generally used for backgrounds to buttons, or other screen decorations, where the scaled content can be scaled infinitely without losing resolution.
Ideally, they're used in addition to density-dependent resources where appropriate, so that the section of the resource (which you didn't explicitly state is scalable) isn't upscaled and subsequently pixelated.
Consider the splash screen for the Kindle app on Android, which features a silhouette of that boy reading against a tree. In a simplified version, the ground can be scaled horizontally infinitely, but if the boy was scaled, he'd appear skewed. So you could use a nine-patch and specify the section which can be scaled, and in which direction.
That's not enough though - if you only included a low resolution resource, the resource would still be scaled up initially if the device display was of a higher density. In this instance, the boy might look blurred from the upscaling, and is an example of when a higher resolution resource could have helped prevent the pixelation.
The way you've phrased the question suggests (to me) that you're asking whether 9-patch images can replace all drawable resources, like icons or resources with pictures in them, to which the answer is no. They're only to be used to scale sections of resources which feature a block of a single colour (i.e. sections which cannot be pixelated).
--
http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch