Fresco的使用及注意事项-阿里云开发者社区

开发者社区> 技术小胖子> 正文

Fresco的使用及注意事项

简介:
+关注继续查看

Fresco的使用及注意事项

添加引用

1.build.gradle添加依赖

compile 'com.facebook.fresco:fresco:0.12.0'
//以下是加载Gif使用,按需添加
compile 'com.facebook.fresco:animated-gif:0.12.0'

2.配置Jni库

根据需要配置需要的jni库,在module的build.gradle中配置

buildTypes {
    debug {
        ndk {
            abiFilters = ["armeabi"]
        }
        ...
    }
}

基本使用

1.初始化

在Application中或者MainActivity中调用:

Fresco.initialize(this);

2.加载基本的图片

加载图片一般是给SimpleDraweeView添加Uri,具体的参见Fresco加载图片封装

注意事项

1.列表中加载图片,滚动时请暂停加载.

我们经常在列表中显示图片,为了减少列表的卡顿现象,需要在列表滚动时暂停加载图片,当停止滚动时再恢复加载.

ListView中设置暂停恢复加载:

listView.setOnScrollListener(new AbsListView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {
        switch (scrollState) {
            case AbsListView.OnScrollListener.SCROLL_STATE_FLING:
            case AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:
                //ImageLoader.pauseLoader();
                if (!Fresco.getImagePipeline().isPaused()) {
                    Fresco.getImagePipeline().pause();
                }
                break;
            case AbsListView.OnScrollListener.SCROLL_STATE_IDLE:
            //ImageLoader.resumeLoader();
                if (Fresco.getImagePipeline().isPaused()) {
                    Fresco.getImagePipeline().resume();
                }
                break;
        }
    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

    }
});

RecyclerView与ListView类似,请自行设置.

2.图片必须设置为具体尺寸或者match_parent

3.清除缓存

当图片改变时我们需要清除缓存重新加载,可调用Fresco提供的方法.清除缓存分为清除内存缓存和清除磁盘缓存.

public static void clearDiskCache(Uri uri) {
    Fresco.getImagePipeline().evictFromDiskCache(uri);
}

public static void clearMemoryCache(Uri uri) {
    Fresco.getImagePipeline().evictFromMemoryCache(uri);
}

未完待续...

Fresco还在使用中,此文会随着使用更新注意事项.



    本文转自 一点点征服   博客园博客,原文链接:http://www.cnblogs.com/ldq2016/p/6646779.html,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ESC初次使用心得
通过老师推荐了解到阿里云的“飞天加速计划·高校学生在家实践”活动,阿里云是一个安全稳定的平台,为大学生提供了很大的学习平台。
179 0
我的使用Esc体验
总体而言,在这个过程中,我体验到了服务器的神奇,也学习到了许多相关的知识,也希望在接下去的时间中继续进行相关的知识学习。
100 0
小程序分包注意事项
1. 背景 包大小限制为3M已满足不了很多小程序场景,特别是小游戏场景 包大小过大、网络不佳的场景下,小程序首次首页启动慢 2. 分包加载原理 3.结构分布     4.分包技巧   分包加载规则: 1.首次启动时,先下载小程序主包,显示主包内的页面; 2.如果用户进入了某个分包的页面,再下载这个对应分包,下载完毕后,显示分包的页面。
1023 0
ESC服务器的使用感受
在学习和使用服务器基本操作及命令后的体验和感受
151 0
云服务器ESC的使用体验
ESC云服务器, java web,
117 0
21119
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载