I had to solve something similar not so long ago, and you are almost there with your decision. However, you must use Rect objects to offset where you draw a bitmap every time. Assuming you copied all of your images into an array of raster images [], and you created a raster image and canvas, as you did above, use the following:
Rect srcRect;
Rect dstRect;
for (int i = 0; i < images.length; i++){
srcRect = new Rect(0, 0, images[i].getWidth(), images[i].getHeight());
dstRect = new Rect(srcRect);
if (i != 0){
dstRect.offset(images[i-1].getWidht(), 0)
}
canvas.drawBitmap(images[i], srcRect, dstRect, null);
}
. , 4 - , .