2012-03-22 48 views
1

我有放置在下面的路徑顯示圖像放置在res文件夾

RES>繪製>圖像>貨幣> [所有圖像]

我已經作出了自定義微調適配器圖像。

viewHolder.flag = (ImageView) view.findViewById(R.id.UICurrencyCurrencyFlag); 
      viewHolder.flag.setImageDrawable(drawable); 

如何在我的ImageView中設置這些圖像。圖片格式爲png

問候

回答

1

你有兩個選擇:

  1. 放入繪製文件夾的所有圖像,無需子文件夾。
  2. 將資源中的所有圖像與文件夾結構放在一起。

的區別是:

  1. 如果你去的方法1,您可以檢索通過ID資源。 (R.drawable。*)
  2. 如果您採用方法2,則可以維護文件夾,但需要將資源讀取爲原始文件。

對資產文件夾中打開文件,您可以參考以前的帖子: Opening a File from assets folder in android

建議:

將文件重命名爲images_currency_image1.jpg避免子文件夾,但保持獨特的煩躁。 我不確定這是否有助於您的情況。

+0

好吧,他們是貨幣標誌像PKR.PNG USD.PNG等。我有美元保存在一個字符串。所以我可以添加。PNG創建文件名。現在R.drawable。*似乎沒用,因爲我不能追加文件名我想。如果我使用資產文件夾,那我該怎麼辦? – 2012-03-22 05:53:58

+0

我爲你添加了一個參考鏈接。 – Calvin 2012-03-22 05:56:39

0

你並不真的需要做出drawable文件夾內的子文件夾。即使你這樣做,你也無法訪問它裏面的內容。它甚至沒有意義。爲什麼你需要子文件夾時,Android正在照顧他們的ID給你的drawables。您將圖片直接放入res/drawable文件夾,如res/drawable/[All images]。然後嘗試訪問R.drawable.UICurrencyCurrencyFlag而不是R.id.UICurrencyCurrencyFlag。祝一切順利。

+0

我需要將它們放在另一個文件夾中,如果這很容易,我可以將它們放在資產文件夾中? – 2012-03-22 05:45:50

+0

不可以。您不能在任何子文件夾內繪製。或者即使你這樣做,你也無法訪問它裏面的文件。檢查我更新的答案。 – Rajkiran 2012-03-22 05:55:53

0

如果你放置資產文件夾中你可以通過以下方式訪問
InputStream位圖;
嘗試{
bitmap = getAssets()。open(「icon.png」);
位圖位= BitmapFactory.decodeStream(bitmap);
ImageView img =(ImageView)findViewById(R.id.myId);
img.setImageBitmap(bit);
} catch(IOException e){
// TODO自動生成捕獲塊
e.printStackTrace();
}

相關問題