I often get finished designs where a designer made the background and draw where the buttons should be placed. Like on this sketch image

The background in this example is simple, but in design it has a lot of graphics where each button has to be placed to its designed location or the final screen will not look nice.
So far, in order to place the buttons on each screen and resolution, I had to make a constant location values for MDPI and then using the scale value (getResources().getDisplayMetrics().density) calculated the locations for other resolutions.
This is a very long and cumbersome process, so I was wondering if there is a better way. Which methodology do you use when you want to locate buttons or other elements to its precise locations?
Absolute positioning of screen elements is inappropriate in most cases on Android as there are so many devices and screens. The best approach is usually to use view groups like the RelativeLayout and place items relative to each other, whilst providing bitmaps at the various screen densities. However you should be able to get what you need from doing this.
It is best to have designs that include an element of flexibility, so if the designs require everything to be in exactly the right place I’d venture to suggest that the design is the problem, not Android.