使用Fresco实现简单的显示一张图片

简介: 使用Fresco实现显示一张图片 仅仅是下载一张图片,在下载完之前,先显示一张站位图效果图源码下载地址(Android Studio工程):http://download.

使用Fresco实现显示一张图片

仅仅是下载一张图片,在下载完之前,先显示一张站位图

效果图

P

源码

下载地址(Android Studio工程):http://download.csdn.net/detail/q4878802/9067397

原文参考

官方地址:http://fresco-cn.org/docs/getting-started.html#_

主要步骤

1. 添加网络权限

<!-- 添加网络权限 -->
<uses-permission android:name="android.permission.INTERNET" />

2. 初始化Fresco

// 初始化Fresco对象
Fresco.initialize(this);

始化要在setContentView之前完成,否则会报空指针异常,找不到SimpleDraweeView控件.

3. 在显示图片的xml布局的根节点,添加命名空间

xmlns:fresco="http://schemas.android.com/apk/res-auto"

4. 添加显示图片的SimpleDraweeView控件

<com.facebook.drawee.view.SimpleDraweeView
    android:id="@+id/my_image_view"
    android:layout_width="300dp"
    android:layout_height="match_parent"
    fresco:placeholderImage="@mipmap/ic_launcher" />

这里的宽和高可以用具体的dp值,也可以用”match_parent”属性,但是不要用”wrap_content”属性

5. 加载图片

SimpleDraweeView simpleDraweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
Uri uri = Uri.parse("http://d.hiphotos.baidu.com/image/pic/item/faedab64034f78f07c22c8207d310a55b3191c33.jpg");
simpleDraweeView.setImageURI(uri);

初始化

1. 在清单文件中的application标签下添加name属性

android:name=".InitApplication"

2. 初始化类

package com.kongqw.frescodemo1;

import android.app.Application;

import com.facebook.drawee.backends.pipeline.Fresco;

/**
 * Created by kongqw on 2015/8/31.
 */
public class InitApplication extends Application {

    @Override
    public void onCreate() {
        // 初始化Fresco对象
        Fresco.initialize(this);
        super.onCreate();
    }
}

XML页面布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fresco="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/my_image_view"
        android:layout_width="300dp"
        android:layout_height="match_parent"
        fresco:placeholderImage="@mipmap/ic_launcher" />

</RelativeLayout>

测试类

package com.kongqw.frescodemo1;

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;

import com.facebook.drawee.view.SimpleDraweeView;


public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        SimpleDraweeView simpleDraweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
        Uri uri = Uri.parse("http://d.hiphotos.baidu.com/image/pic/item/faedab64034f78f07c22c8207d310a55b3191c33.jpg");
        simpleDraweeView.setImageURI(uri);
    }
}
相关文章
|
6月前
|
Dart
Flutter 学习之图片的选择、裁切、保存
Flutter 学习之图片的选择、裁切、保存 在Flutter中,我们可以通过调用系统的图片选择器来选择一张图片,也可以通过使用插件来实现图片的裁切和保存。
324 0
|
XML 存储 数据安全/隐私保护
Android自定义控件(九)——如何让图片颜色更鲜艳以及给图片添加水印
Android自定义控件(九)——如何让图片颜色更鲜艳以及给图片添加水印
275 0
Android自定义控件(九)——如何让图片颜色更鲜艳以及给图片添加水印
|
XML Android开发 数据格式
Android Glide加载网络图片不显示,但用网页打开又正常显示
Android Glide加载网络图片不显示,但用网页打开又正常显示
821 0
Android Glide加载网络图片不显示,但用网页打开又正常显示
SwiftUI—如何下载并使用图像视图显示网络图片
SwiftUI—如何下载并使用图像视图显示网络图片
1723 0
SwiftUI—如何下载并使用图像视图显示网络图片
|
网络协议 网络安全 C++
Qt | 显示网络图片 QNetworkAccessManager
有事我们需要加载网络图片而非本地图片,文章介绍了qt控件显示网络图片的方法。
845 0
|
Android开发 数据格式 XML
Android项目实战(三十):Fresco加载gif图片并播放
原文:Android项目实战(三十):Fresco加载gif图片并播放 前言: 项目中图文混合使用的太多太多了,但是绝大部分都是静态图片。 然而项目开发中有这么一个需求:显示一个出一个简短的动画(一般都不超过3秒)演示 比如说:一个功能提供很多步骤来教用户做广播体操,那么第一步就显示一个3秒钟的动作图,第二步显示一个几秒钟的动作图。
1747 0
|
Windows 存储
UWP 浏览本地图片及对图片的裁剪
原文:UWP 浏览本地图片及对图片的裁剪 1.前言 准备给我的校园助手客户端添加一个修改头像的功能,但是查了好多资料都没有找到裁剪图片的简单的方法,最后才找到这个使用Launcher调用系统组件的简单办法,所以分享给大家。
1343 0
|
Android开发 缓存
Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
 Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果 附录1简单介绍了Android开源的图片加载框架。
1929 0