android 生成随机图像,从android中的drawable文件夹中随机生成图像

一种方法是使用所需图像的id创建一个数组.并从该数组中随机取一个.其他答案解释了这种方法.

另一种方法是在项目的values文件夹中创建文件random_images_array.xml并填充如下:

@drawable/image_1

@drawable/photo_2

@drawable/picture_4

然后你可以从那个xml数组中随机获取图像:

final TypedArray imgs = getResources().obtainTypedArray(R.array.random_images_array);

final Random rand = new Random();

final int rndInt = rand.nextInt(imgs.length());

final int resID = imgs.getResourceId(rndInt, 0);

第三种方法是从R.drawable类中获取随机字段:

final Class drawableClass = R.drawable.class;

final Field[] fields = drawableClass.getFields();

final Random rand = new Random();

int rndInt = rand.nextInt(fields.length);

try {

int resID = fields[rndInt].getInt(drawableClass);

img.setImageResource(resID);

} catch (Exception e) {

e.printStackTrace();

}

你可能感兴趣的:(android,生成随机图像)