2010-07-23 44 views
3
String rank[] = {"tclub1.png", "tclub2.png", "tclub3.png", "tclub4.png", 
    "tclub5.png", "tclub6.png", "tclub7.png", "tclub8.png", "tclub9.png", 
    "tclub10.png", "tclub11.png", "tclub12.png", "tclub13.png"}; 

Random randInt = new Random(); 
int b = randInt.nextInt(rank.length); 
String d = ("tclub" + b + ".png"); 
Log.v(LOG_TAG, "in value:=" + d); 

以上是代码。 其实我的数组给我一个(0到12)之间的随机索引..之后,我将它附加到一个图像名称。例如(tclub1.png) 现在它给我的图像名称是String fromat。 我如何随机指定这个图像?Android随机

+0

http://stackoverflow.com/questions/3315718/android-random-number – fadden 2010-07-23 19:27:47

回答

1

如果您想将图像加载到ImageView的,你可以这样做:

String imgName = "tclub1"; // the image you want to load 
int id = getResources().getIdentifier(imgName, "drawable", getPackageName()); 
imageView.setImageResource(id); 
+0

的重复喜itsik .. thanks..but它没有发生。 当我使用日志标签来查看它显示的ID的值0 nd不随机设置图像 – 2010-07-23 09:26:54

+1

所有的图像位于res/drawable?此外,图片名称应该没有“.png”。 (它应该只是资源名称) – Itsik 2010-07-23 10:07:08

+0

是所有图像都在drawable-hpdi文件夹中。 – 2010-07-23 10:17:54

0

找到控制:

ImageView image = (ImageView) findViewById(R.id.rockId); 

要动态地从绘制加载图像我用这个帮手函数

public static int getDrawable(Context context, String name) 
{ 
    Assert.assertNotNull(context); 
    Assert.assertNotNull(name); 

    return context.getResources().getIdentifier(name, 
      "drawable", context.getPackageName()); 
} 

这将返回您的drawable的id,现在您只需要设置imag E在控制:

image.setImageResource(int Id);