Fresco 入门
首先,将 Fresco 添加到你的 build.gradle
,如备注部分所示:
如果你需要其他功能,例如动画 GIF 或 WebP 支持,你还必须添加相应的 Fresco 工件 。
壁画需要初始化。你应该这样做一次,所以把初始化放在你的 Application
是个好主意。一个例子是:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
}
}
如果要从服务器加载远程图像,则应用程序需要 internt 权限。只需将其添加到你的 AndroidManifest.xml
:
<uses-permission android:name="android.permission.INTERNET" />
然后,将 SimpleDraweeView
添加到 XML 布局中。Fresco 不支持 wrap_content
用于图像尺寸,因为你可能有多个具有不同尺寸的图像(占位符图像,错误图像,实际图像……)。
所以你可以添加一个固定尺寸的 SimpleDraweeView
(或 match_parent
):
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/my_image_view"
android:layout_width="120dp"
android:layout_height="120dp"
fresco:placeholderImage="@drawable/placeholder" />
或者为图像提供宽高比 :
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/my_image_view"
android:layout_width="120dp"
android:layout_height="wrap_content"
fresco:viewAspectRatio="1.33"
fresco:placeholderImage="@drawable/placeholder" />
最后,你可以在 Java 中设置图像 URI:
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
draweeView.setImageURI("http://yourdomain.com/yourimage.jpg");
而已! 在获取网络图像之前,你应该看到占位符是可绘制的。