嘿伙计们我是Android新手.... 我有150张图像,我可以根据随机生成的ID将其中一个设置为ImageButton? 我开始是这样的:
rand = new Random(System.currentTimeMillis());
x = rand.nextInt(3);
y = rand.nextInt(8);
z = rand.nextInt(10);
String myID = "R.id.myImage_" + x + y + z;
答案 0 :(得分:1)
要在Android中为View
生成随机ID,您可以使用generateViewId()
,它是Android库中捆绑的View
类中的一种方法,文档说: / p>
生成一个适合在setId(int)中使用的值。此值不会 与Aapt for R.id在生成时生成的ID值发生冲突。
查看官方文档here。
因此,您现在可以执行以下操作:
int imageCoordinates = x + y + z;
int imageId = View.generateViewId() + imageCoordinates;
答案 1 :(得分:0)
您可以使用以下代码执行此操作:
int resource = getResources().getIdentifier(myID, "drawable", "com.your.package");
PS:取出" R.id.
"从名字。
答案 2 :(得分:0)
将图像重命名为image1,image2,...,image150。
生成1到150之间的随机数(包括两者)。
使用以下代码获取图片资源ID。 (如果已将图像放在mipmap文件夹中,请使用“mipmap”而不是“drawable”)
String myID = "image"+ generatedRandomNumber;
int resource = getResources().getIdentifier(myID, "drawable", "com.your.package");
使用此资源ID为ImageButton
设置图片。