こんにちは、SQLite データベースに保存したパスを使用して ImageView の画像を変更したいと考えていました。私が達成したいのは、画像が利用可能になるたびに毎秒実行され、次の画像が利用可能になるまで表示され続けることです。ただし、表示するものがない場合は常にデフォルトの画像を使用します。しかし、今のところ解決したい主な問題は、私が持っているパスを使用して imageView を設定できないことです。パスからビットマップを作成するなど、さまざまな解決策を試しましたが、それでも同じエラーが発生します。E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /mnt/sdcard/Echo/Images/Awesome4 - 00:01.jpg: open failed: ENOENT (No such file or directory)
これが今の私のコードです:
String path = db.getImagePath(file_name, curTime);
Log.v("Your image filename", file_name);
Log.v("Your currentPosition", curTime);
Log.v("Your Path Playback edit", path);
try{
preview.setImageURI(Uri.parse(Environment.getExternalStorageDirectory()+"/Echo/Images/"+file_name));
}catch (Exception e){
e.printStackTrace();
preview.setImageResource(R.drawable.sample_image);
}
これは、実行可能なメソッドの下で実行されます。そして、これが私が得るlogcatです:
V/Your Path: /mnt/sdcard/Echo/Images/
V/Your image filename: Awesome4 - 00:01.jpg
V/Your currentPosition: 00:01
V/Your Path Playback edit: /mnt/sdcard/Echo/Images/
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /mnt/sdcard/Echo/Images/Awesome4 - 00:01.jpg: open failed: ENOENT (No such file or directory)
I/System.out: resolveUri failed on bad bitmap uri: /mnt/sdcard/Echo/Images/Awesome4 - 00:01.jpg
D/dalvikvm: GC_CONCURRENT freed 380K, 14% free 3067K/3560K, paused 74ms+3ms, total 226ms
V/Your image filename: Awesome4 - 00:02.jpg
V/Your currentPosition: 00:02
V/Your Path Playback edit: [ 06-27 04:14:07.691 6043: 6043 E/BitmapFactory ]
/mnt/sdcard/Echo/Images/Awesome4 - 00:02.jpg: open failed: ENOENT (No such file or directory)