2011-11-29 127 views
0

我們可以通過改爲Drawable.createfrompath文件路徑的目錄路徑?我們可以傳遞一個目錄路徑到Drawable.createfrompath而不是文件路徑嗎?

例:

Drawable d = Drawable.createFromPath("aq/img/sample.png"); 

路徑轉換爲可繪製的 「d」。我想通過一個文件夾路徑到相同的功能,說「/ aq/img /」,我想將該文件夾中存在的所有圖像轉換爲繪圖。這可以做到嗎?如何?

編輯: 難道這在我的ImageView顯示單個圖像。

ImageView imgView01 = (ImageView) findViewById(R.id.imageView1); 
      File dir = new File("/sdcard/WallpapersHD/"); 
      File file[]=dir.listFiles(); 

      for (int i=0;i<file.length;i++) { 


       Drawable d = (Drawable) Drawable.createFromPath(file[i].toString()); 


       imgView01.setImageDrawable(d); 

現在我該如何設置5秒的延遲時間,然後在imageview中設置不同的圖像?

+0

那你怎麼指望它所有的圖像一起合併成一個單一的Drawable?一個在另一個之上,或者平鋪等等?說實話,我不希望這是一個框架/操作系統支持的操作,部分原因是你可以想象的變化的數量。我希望你只需要在代碼中明確地做到這一點。 –

+0

每個路徑轉換到一個可拉伸後我想將其設置成使用ImageView的「imgView01.setImageDrawable(d);」然後將相同的imageview和相同的drawable重用到文件夾中的其他圖像。基本上我想要一個接一個地顯示文件夾中的所有圖像。 – user838522

+0

啊,一個又一個的 - 這是不一樣傳遞一個文件夾中,並獲得*一個*'Drawable'一鼓作氣雖然,是嗎?爲什麼不爲每個文件創建一個新的'Drawable'? –

回答

0

做到這一點,開始計數5秒

long time = SystemClock.elapsedRealTime(); 

把這個變成一個循環之後:

if(SystemClock.elapsedRealtime() > time + 5000){ 

     ImageView img01 = (ImageView) findViewById(R.id.yourNewImg); 
     img01.setImageDrawable(d); 

} 

「d」 是你的繪製對象。

相關問題