在Android中的ImageView中加载图像

时间:2010-07-07 09:09:50

标签: android android-widget imageview

在我的应用程序中....有一些像temp1.jpg,temp2.​​jpg ..... upto temp35.jpg,

所以点击按钮,我想在ImageView中加载一个一个的图像.... 我想这样做:

  

CNT = 1;
imagename =“temp”+ cnt +“.jpg”;
cnt ++;

所以我的困惑在于“无论如何都要从image(imagename变量)加载imageview中的图像,如temp1.jpg等。”

5 个答案:

答案 0 :(得分:4)

你可以试试这个:

int cnt = 1;
//Bitmap bitmap = BitmapFactory.decodeFile("temp" + cnt + ".jpg");
int imageResource = getResources().getIdentifier("drawable/temp" + cnt + ".jpg", null, getPackageName());
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), imageResource);
imageView.setImageBitmap(bitmap);
cnt++;

希望这就是你要找的东西。

答案 1 :(得分:3)

为什么不喜欢

File f = new File(PathToFiles + "/temp" + cnt + ".jpg");
if (f.exists()) {
  Drawable d = Drawable.createFromPath(f);
  imageview.setImageDrawable(d);
}

答案 2 :(得分:3)

我实施了以下解决方案,它对我有用:

while(cnt!=n)
{
 String icon="temp" + cnt;
 int resID =
 getResources().getIdentifier(icon,"drawable","testing.Image_Demo");
 imageView.setImageResource(resID);
 cnt++; 
}

答案 3 :(得分:1)

我不知道这是否是最佳解决方案,但您可以创建一个将图像名称映射到资源的Hashtable。

Hashtable map;
map.put("temp1", R.drawable.temp1) // assuming temp1.jpg is in /drawable

然后你可以从drawable加载ImageView。

 String imageName = "temp" + n;
 Drawable d = getResources().getDrawable((int)map[imageName]);
 ImageView i = new ImageView(this);
 i.setImageResource(d);

答案 4 :(得分:0)

它对我有用:

Bitmap myBitmap = BitmapFactory.decodeResource(getResources(),R.drawable.my_image)
.copy(Bitmap.Config.ARGB_8888, true);
Canvas c = new Canvas(myBitmap);
// etc.  .......