在Fresco中不显示图像文件

时间:2017-10-23 11:52:07

标签: android image mobile local fresco

我在Android上使用Fresco库,但我没有显示手机中的任何图像。

  

in Xml

<com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/imgFile"
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:padding="5dp" />
  

第一段代码

imgFile.setImageURI(Uri.fromFile(new File("file:///mnt/sdcard/Download/file.jpg")));
  

第二段代码

holder.imgFile.setImageURI(Uri.parse("mnt/sdcard/Download/file.jpg"));
  

第三段代码

holder.imgFile.setImageURI(Uri.parse("file:///mnt/sdcard/Download/file.jpg"));
  

第四段代码

imgFile.setImageURI(Uri.fromFile(new File("file:///mnt/sdcard/Download/file.jpg")));

1 个答案:

答案 0 :(得分:1)

每个设备都与mnt/sdcard/没有相同的目录层次结构,它可能是0/mnt/sdcard/且类似,所以永远不要对这些值进行硬编码。

相反,如果您想访问Download文件夹,请使用File getExternalStoragePublicDirectory (String type)仅访问公共目录  所以使用

File path = Environment.getExternalStoragePublicDirectory(
            Environment.DIRECTORY_DOWNLOADS);
imgFile.setImageURI(Uri.fromFile(new File(path, "file.jpg")));

注意:确保您拥有所需的权限以及runtime permissions for android M and above