码迷,mamicode.com
首页 > 其他好文 > 详细

fresco Bitmap too large to be uploaded into a texture

时间:2016-08-10 06:30:18      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

fresco加载图片方法

布局文件引入 xmlns:fresco="http://schemas.android.com/apk/res-auto"

    <com.facebook.drawee.view.SimpleDraweeView
        android:id="@id/img_icon"
        android:layout_width="42.0dip"
        android:layout_height="42.0dip"
        android:layout_marginLeft="12.0dip"
        android:layout_marginTop="20.0dip"
        fresco:roundAsCircle="true"
        fresco:failureImage="@drawable/my_face"
        fresco:failureImageScaleType="centerInside"/>

加载图片方法

m.SimpleDraweeView.setImageURI(Uri.parse(imageUrl));

加载网络图片一切正常(网络图片测试没有1M以上的 都是通过七牛云存储裁剪后显示的)
当获取本地手机相册的时候 提示Bitmap too large to be uploaded into a texture 
fresco默认不是打印Log的 打开方式如下
Set<RequestListener> requestListeners = new HashSet<>();
        requestListeners.add(new RequestLoggingListener());
        ImagePipelineConfig config = ImagePipelineConfig.newBuilder(appContext)
                // other setters
                .setRequestListeners(requestListeners)
                .build();
        Fresco.initialize(appContext, config);
        FLog.setMinimumLoggingLevel(FLog.VERBOSE);

搜索  Bitmap too large to be uploaded into a texture  关键字网上说在 application 加入android:hardwareAccelerated="false" 关闭硬件加速,个人感觉既然作为最火的fresco一定有解决办法于是在官网找到了 

http://www.fresco-cn.org/docs/requesting-multiple-images.html 

有这么一个属性 .setLocalThumbnailPreviewsEnabled(true

本功能仅支持本地URI,并且是JPEG图片格式

如果本地JPEG图,有EXIF的缩略图,image pipeline 可以立刻返回它作为一个缩略图。Drawee 会先显示缩略图,完整的清晰大图在 decode 完之后再显示。

 我的理解是fresco去获取相册的缩略图经测试还是不行依然不显示。

我又换了关键字搜索 在日志前面加入了fresco 变成 fresco Bitmap too large to be uploaded into a texture 

在结果中第一条记录就是http://stackoverflow.com/questions/33676807/fresco-bitmap-too-large-to-be-uploaded-into-a-texture

ImageRequest request = ImageRequestBuilder.newBuilderWithSource(Uri.parse(imageUrl))
                .setProgressiveRenderingEnabled(true)
                .setAutoRotateEnabled(true)
                .setLocalThumbnailPreviewsEnabled(true)
                .setResizeOptions(new ResizeOptions(view.getLayoutParams().width, view.getLayoutParams().height))
                .build();
        DraweeController controller = Fresco.newDraweeControllerBuilder()
                .setImageRequest(request)
                .setOldController(view.getController())
                .setAutoPlayAnimations(true).build();
        view.setController(controller);

运行测试显示正常 大功告成^0^



fresco Bitmap too large to be uploaded into a texture

标签:

原文地址:http://www.cnblogs.com/freexiaoyu/p/5755232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!