fresco加载图片 动图

来源:互联网 发布:淘宝转换微信链接 编辑:程序博客网 时间:2024/05/16 01:07

  加依赖 

   compile 'com.facebook.fresco:fresco:1.5.0'
    // For animated GIF support
    compile 'com.facebook.fresco:animated-gif:1.5.0'
    // For WebP support, including animated WebP
    compile 'com.facebook.fresco:animated-webp:1.5.0'
    compile 'com.facebook.fresco:webpsupport:1.5.0'
    // For WebP support, without animations
    compile 'com.facebook.fresco:webpsupport:1.5.0'


 

在加载图片之前,你必须初始化Fresco类。你只需要调用Fresco.initialize一次即可完成初始化,在Application 里面做这件事再适合不过了(如下面的代码),注意多次的调用初始化是无意义的。

12345678
[MyApplication.java]public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();Fresco.initialize(this);}}

做完上面的工作后,你需要在 AndroidManifest.xml 中指定你的 Application 类。为了下载网络图片,请确认你声明了网络请求的权限。

12345678910111213
  <manifest    ...    >    <uses-permission android:name="android.permission.INTERNET" />    <application      ...      android:label="@string/app_name"      android:name=".MyApplication"      >      ...    </application>    ...  </manifest>

在xml布局文件中, 加入命名空间:

123456
<!-- 其他元素--><LinearLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:fresco="http://schemas.android.com/apk/res-auto"    android:layout_height="match_parent"    android:layout_width="match_parent">

加入SimpleDraweeView:

123456
<com.facebook.drawee.view.SimpleDraweeView    android:id="@+id/my_image_view"    android:layout_width="130dp"    android:layout_height="130dp"    fresco:placeholderImage="@drawable/my_drawable"  />

开始加载图片:

123
Uri uri = Uri.parse("https://raw.githubusercontent.com/facebook/fresco/gh-pages/static/logo.png");SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);draweeView.setImageURI(uri);