zoukankan      html  css  js  c++  java
  • 037 Android Glide图片加载开源框架使用

    1.Glide简单介绍

      Glide是一款由Bump Technologies开发的图片加载框架,使得我们可以在Android平台上以极度简单的方式加载和展示图片。Glide是一个快速高效的Android图片加载库,注重于平滑的滚动。Glide提供了易用的API,高性能、可扩展的图片解码管道(decode pipeline),以及自动的资源池技术。

      Glide 支持拉取,解码和展示视频快照,图片,和GIF动画。Glide的Api是如此的灵活,开发者甚至可以插入和替换成自己喜爱的任何网络栈。默认情况下,Glide使用的是一个定制化的基于HttpUrlConnection的栈,但同时也提供了与Google Volley和Square OkHttp快速集成的工具库。

    2.Glide使用环境配置

    (1)添加依赖

    implementation 'com.github.bumptech.glide:glide:4.9.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'

    (2)添加网络权限

    <uses-permission android:name="android.permission.INTERNET" />

    3.Glide的简单使用案例

    (1)xml页面布局

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".MainActivity">
    
        <Button
            android:id="@+id/bt_pic_loader"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="加载图片" />
    
        <ImageView
            android:id="@+id/imageView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp" />
    
        <ImageView
            android:id="@+id/iv_pic"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    
    </LinearLayout>

    (2)java后台

    package com.example.administrator.test67glide;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ImageView;
    
    import com.bumptech.glide.Glide;
    
    public class MainActivity extends AppCompatActivity {
    
        Button bt_pic_loader;
        ImageView imageView;
        ImageView iv_pic;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            bt_pic_loader=findViewById(R.id.bt_pic_loader);
            imageView=findViewById(R.id.imageView);
            iv_pic=findViewById(R.id.iv_pic);
            iv_pic.setImageResource(R.mipmap.news_pic_default);
            iv_pic.setScaleType(ImageView.ScaleType.FIT_XY); //设置图片的缩放方式,宽高填充父控件
    
            bt_pic_loader.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //利用Glide加载网络图片
                    String url = "http://118.25.152.62:8080/zhbj/10007/1452327318UU91.jpg";
                    Glide.with(getApplicationContext()).load(url).into(imageView);
    
                }
            });
    
        }
    }

    (3)效果图

     参考文献:https://www.jianshu.com/p/4f457a124d67

  • 相关阅读:
    [Matlab] subplot 紧凑,减少空白
    论文
    统计学习理论
    位操作
    Pattern Recognition and Machine Learning
    HDU6862 Hexagon (2020HDU 多校 D8 H)
    VS2008 : error PRJ0002 : 错误的结果 1 (从“d:/Program Files/Microsoft Visual Studio 9.0/VC/bin/cl.exe”返回)
    static简单实例说明其用法(转)
    ArcGIS Engine开发系列:将地图导出为图片的两种方法
    按类别列出的编译器选项
  • 原文地址:https://www.cnblogs.com/luckyplj/p/10941936.html
Copyright © 2011-2022 走看看