web-dev-qa-db-ja.com

AndroidプログラムでXML図形を描画可能として設定

こんにちは、ドローアブルmyshape.xmlがあり、_<shape>_が含まれています。Android:idを形状に設定できません。

私のコードでは、ビューの背景をこのファイルに設定したい

catAll.setBackgroundDrawable(getResources().getDrawable(R.id......???));

myshape.xmlにはIDがないため、Rファイルに表示されません。 IDをオブジェクトに設定できません。

私のXMLでは、ドローアブルリソース名を入力するだけで形状を設定しています。しかし、私はこれをプログラムで行う必要があります。

22
CQM

自分でドローアブルを取得する必要はありません。代わりにこれを使用してください:

catAll.setBackgroundResource(R.drawable.myshape);

今後の参考として、もしdoドローアブルを取得したい場合、ドローアブルはR.drawable名前空間に存在することに注意してください。したがって、コードは次のようになります。

getResources().getDrawable(R.drawable.myshape);

これは、XMLで行うことと似ています。

@drawable/myshape

の代わりに

@id/myshape
40
K-ballo