例えば乱数を発生させて出た数によって背景を変更したり、ボタンを押すとレイアウトの背景が変わったりするようにしたいと思いました
静的に設定するならxmlで作ればいいですし、もしくはJavaですべてのレイアウトを定義すれば何の問題もないですが、 すでに作成済みのxmlファイルの背景画像を変えるにはどうすればいいかがわかりませんでした

setContentView(R.layout.main);
RelativeLayout layout = (RelativeLayout) findViewById(R.id.RelativeLayout1);
layout.setBackgroundResource(R.drawable.bg1);

まずsetContentView()を使ってmain.xmlという作成済みのレイアウトを設定します
そしてその一番外の大枠のレイアウト(今回はRelativeLayout)にRelativeLayout1というidを付けてlayoutという名前で紐付けします
最後にbg1.pngという画像をsetBackgroundResource()で背景画像に設定します
2行目はidを付けたレイアウトの形式によってFrameLayoutにしたりLinearLayoutに変更すればOKです

ただただこれだけの簡単なコードですが、灯台下暗し、理解するまで結構時間がかかってしまいました



~~参考サイト~~
背景画像を変更してボタンも使おう(TEch. RESERVoir)