如何在android视图中动态设置图像

时间:2012-11-24 06:45:31

标签: android

我想通过从drawable文件夹中选择图像来动态显示50个图像。我应该如何使用它们而不使用开关盒。

2 个答案:

答案 0 :(得分:0)

您可以动态地从Activity子类中获取捆绑的drawable的资源ID,如下所示:

int id = getResources().getIdentifier("my_image", "drawable", getPackageName());

假设您有一个名为my_image.png可绘制资源。

然后,就这样做:

myImageView.setImageResource(id);

答案 1 :(得分:0)

如果您有兴趣将图像作为幻灯片放映显示所有图像,那么您可以简单地使用所有图像的整数数组,然后使用数组索引简单地获取图像。 您可以使用链接click here,然后您可以将图像显示为幻灯片(可能需要对其进行一些修改)

private void setImagesToFlipper(ViewFlipper flipper) {

  for (int count = 0; count < imageCountArray - 1; count++) {
   ImageView imageView = new ImageView(this);
   Bitmap  bmp = BitmapFactory.decodeResource(getResources(), imageCountArray[count]);
   imageView.setImageBitmap(bmp);
   flipper.addView(imageView);

  }

imageCountArray是这样的:

 int imageCountArray[] = {R.drawable.image0,R.drawable.image1,R.drawable.image2,R.drawable.image3,R.drawable.image4,};

并确保您的资源drawables文件夹中有图像

编辑:

甚至你可以使用像

这样的东西
String mDrawableName = "image1";
int resID = getResources().getIdentifier(mDrawableName , "drawable", getPackageName());

并使用此ID代替数组

希望这会有所帮助。快乐的编码