我的代碼主要解碼一系列位圖對象,以便稍後在ImageView中顯示。要更好地控制持續時間以顯示每個圖像。所以我在Runnable中實現了代碼。這是可運行的代碼片段。連續循環執行runnable
final File file[]=dir.listFiles();
iv.postDelayed(
new Runnable() {
@Override
public void run() {
i++;
Bitmap bitmap = decodeFile(file[i]);
iv.setImageBitmap(bitmap);
iv.postDelayed(this, 5000);
}
}, 5000);
但是,我似乎沒有很好的控制這裏的循環。我無法使用for循環,因爲在這種情況下「i」不能被賦值爲零。只要「文件[i]」具有文件引用,此代碼就可以工作。只要它一次顯示所有圖像,應用程序只需強制關閉數組就可以處理arrayindexoutofbounds異常。我只想無限地繼續循環。任何指針?
這裏decodeFile()調用另一個函數來重新調整位圖的大小。
對不起,是我不好。那裏沒有「j」循環。編輯的問題。好的,將嘗試while循環。 – user838522