1

メソッドPictureは random を受け取りint iます。 リソース フォルダー (pic0、pic1、pic2、…) 内の複数のドローアブルからランダムに選択し、それらをビューの最後に背景として設定するためにi、に追加したいと考えています。どうすればいいですか?これが私が今持っているコードです:R.drawable.pic+ik

public void Picture(int i){
    View k = new View(NewGame.this);
    k.setBackgroundResource(R.drawable.pic); 
    // here it should be k.setBackgroundResource(R.drawable.pic1); for example
    setContentView(k);
}
4

4 に答える 4

2

次のようにしてみてください:

int resourceId=Resources.getSystem().getIdentifier("pic"+1, "drawable", getPackageName());
k.setBackgroundResource(resourceId); 
于 2012-06-28T12:17:40.020 に答える
0

getIdentifierメソッドのようなものを使用してresIdを取得できると思います。

于 2012-06-28T12:16:21.750 に答える
0

私のために働いたコードは次のとおりです。

public void Picture(int i){

View k = new View(NewGame.this);

setContentView(k);

int resourceId=getResources().getIdentifier("pic"+i, "drawable",getPackageName()); 

k.setBackgroundResource(resourceId);
}
于 2012-06-28T21:53:47.773 に答える
0

この方法を試してください

public static String PACKAGE_NAME ;
PACKAGE_NAME=getApplicationContext().getPackageName();
int resID = getResources().getIdentifier( PACKAGE_NAME+":drawable/" + "pic"+urrandomenumber, null, null);  
k.setBackgroundResource(resID);
于 2012-06-28T13:11:43.530 に答える