4

つまり、基本的に、再利用したいxmlがあります。内容は多少同じですが、背景だけが異なり、調整も少しあります。どうすればいいですか。試しView.setBackGroundDrawable(R.drawable.sample);ましたが、うまくいきません。アプリがクラッシュします。ただし、ドローアブルフォルダの1つに画像を配置しました。

4

1 に答える 1

9

xmlでレイアウトにIDを割り当てて、Javaコードで別のレイアウトを設定できるようにすることができます。例を次に示します。

 //assuming your Layout is named linearlayout1:
 LinearLayout ll = (LinearLayout) findViewById(R.id.linearlayout1);
 ll.setBackgroundResource(R.drawable.sample);

次のように、背景を設定する前にifステートメントを作成することもできます。

LinearLayout ll = (LinearLayout) findViewById(R.id.linearlayout1);
if( yourifstatement) {
ll.setBackgroundResource(R.drawable.sample);
}

それがRelativeLayoutの場合、同じコードが適用されます。LinearLayoutをRelativeLayoutに変更するだけです。

これで問題がない場合は、LogCatを投稿してください。

于 2012-11-15T02:56:30.577 に答える