在android上使用Fresco库显示SD卡上的图像
我可以使用Fresco图像库显示URL中的图像,如他们的网站所示-在android上使用Fresco库显示SD卡上的图像,android,sd-card,fresco,Android,Sd Card,Fresco,我可以使用Fresco图像库显示URL中的图像,如他们的网站所示- Uri u = Uri.parse("https://assets-cdn.github.com/images/modules/logos_page/GitHub-Mark.png"); SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view); draweeView.setImageURI(u); 如何使用Fresco显
Uri u = Uri.parse("https://assets-cdn.github.com/images/modules/logos_page/GitHub-Mark.png");
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
draweeView.setImageURI(u);
如何使用Fresco显示SD卡上的图像?查看:
这里,从sd卡加载图像在第一个链接中进行了说明,如何将其与fresco连接在第二个链接中进行了说明。获取设备上的文件
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
Uri imageUri= Uri.fromFile(new File(imagePath));// For files on device
draweeView.setImageURI(imageUri);
获取网络上的文件
Uri imageUri = Uri.parse(imagePath);
ImageRequest request = ImageRequest.fromUri(imageUri);
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setImageRequest(request)
.setOldController(draweeView.getController()).build();
draweeView.setController(controller);
您只需要使用res://URI方案,后跟资源的ID,如下所示:
Uri localImageUri = Uri.parse("res:/" + R.drawable.your_sdcard_image);
simpleDraweeView.setImageURI(localImageUri);
这是像这样的
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
drayeview.setImageURI(getImageContentUri(context.filepath))代码>
但是,您可能会遇到此问题
如果您使用下面给出的壁画示例在RecyclerView
中显示SD卡或图库中的图像
Uri imageUri = Uri.parse("file://"+galleryList.get(position));
ImageRequest request = ImageRequest.fromUri(imageUri);
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setImageRequest(request)
.setOldController(holder.simpleDraweeViewOne.getController()).build();
Log.e(TAG, "ImagePath uri " + imageUri);
holder.simpleDraweeViewOne.setController(controller);
注意:文件://
用于显示SD卡中的数据
Uri imageUri = Uri.parse("file://"+galleryList.get(position));
ImageRequest request = ImageRequest.fromUri(imageUri);
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setImageRequest(request)
.setOldController(holder.simpleDraweeViewOne.getController()).build();
Log.e(TAG, "ImagePath uri " + imageUri);
holder.simpleDraweeViewOne.setController(controller);