我有一个我从数据库中检索到的图像的真实路径
我想通过使用真实路径设置ImageView
( /storage/emulated/0/DCIM/100MEDIA/image.jpg )
如何做到这一点?
public void getIMG(){
Cursor res = myDb.GetRow(id);
if(res.moveToFirst()){
String path = res.getString(DatabaseHelper.ROWIMG);
/*img.set'???'*/
}
}
答案 0 :(得分:1)
嗨试试看看它是否有帮助
String imagePath = cursor.getString(column_index_data);
File file = new File(imagePath);
file.getAbsolutePath();
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true ;
BitmapFactory.decodeFile(filePath , options);
options.inSampleSize = scaleFactor ;
options.inJustDecodeBounds = false ;
Bitmap newBitmap = BitmapFactory.decodeFile(filePath , options);
答案 1 :(得分:0)
最佳答案是使用像Picasso这样的库,让它在后台加载图像,并在图像准备好后将其应用到ImageView
。
如果你决定自己重新发明这个轮子,可以在后台线程上使用BitmapFactory.decodeFile()
来读取文件并给你一个Bitmap
,你可以传递给ImageView