in MyView right under Rect bitmapRect; make the variables
public int width;
public int height;
then in your MyView class put this method in there
@Override
protected void onSizeChanged (int w, int h, int oldw, int oldh)
{
width = w;
height = h;
}
now you have the width and height of the canvas that you are using then in your onDraw() method make the bitmapRect like this
bitmapRect = new Rect(width -200,0, width, 50);
i think the problem is that how you had it you had a negative number in your rect and it was inverting the bitmap, when you use a draw command with Rects, one is the source of what your going to draw and one is the destination of where its going to be drawn