2010-11-11 72 views
0

我想在android中的ImageButton上動態設置圖像。但是,我有超過200張圖片。那會是什麼好的解決方案?Android在Imagebutton上設置動態圖像

最好的想法是,我可以使用圖像的名稱來調用不同的圖像。即imagebutton.setImage(「/ res/abc.png」);然而,在我看來,這樣做不是微不足道的。請幫助我解決這個問題。非常感謝!!

問候 一分錢

回答

1

您可以使用Typed Array資源。在鏈接的末尾有一個例子來說明如何將它用於drawables(圖像)。

編輯:

資源可以訪問原始數據:使用AssetManager.open(..) 然後你可以使用BitmapFactory.decodeStream(..)創建從數據流中的位圖。

+0

您是否知道我如何從可繪製文件夾訪問圖像? – justicepenny 2010-11-11 17:53:06

+0

我的意思是不使用R.id.XXX.png,但像(res/drawable/xxx.png)? – justicepenny 2010-11-11 17:53:49

+0

drawable文件夾位於.apk包內部,不能通過資源方法直接訪問 – 2010-11-11 18:53:47

1

您可以將資源文件夾中的圖像。之後按照這個簡單的代碼:

try {    
       Class<drawable> res = R.drawable.class; 
       if(str!=null){         
       Field field = res.getField(str); 
       int drawableId = field.getInt(null); 
       bengalidaypng.setImageResource(drawableId);    
       } 
      } 
      catch (Exception e) { 
         System.out.println("Image not found in drawable folder"); 
      } 

更詳細的樣本,可以發現here