Android开发笔记(八)——ImageView&使用第三方库加载网络图片

新建演示的activity ImageViewActivity,之后的步骤和前面的笔记相同,也比较熟悉了,这里就不再记录了。

常用属性

android:src="" 图片文件
android:scaleType="" 缩放方式
      fitXY 填充拉伸,宽高比可能发生改变
      center 居中,不缩放,小则裁剪
      centerCrop 锁定长宽比缩放,裁剪显示
      centerInside 锁定长宽比缩放,直至完全显示
      fitCenter 同上,位于中央,类似还有fitEnd底部, fitStart顶部
      martix 矩阵绘制
android:adjustViewBounds="true" 自调整图片layout, 需要layout用wrap
android:maxWidth="90dp" 最大宽
android:maxHeight="90dp" 最大高
android:tint="#aaff0000" 滤镜,蒙版

加载网络图片

Glide是一款由BumpTechnologies开发的图片加载框架,使得我们可以在Android平台上以极度简单的方式加载和展示图片。

要想使用Glide,首先需要将这个库引入到我们的项目当中。

在这里https://github.com/bumptech/glide找到

把需要引用的库放在 build.gradle

Gradle会自动帮我们加载库的内容

然后就可以按照如下方法加载网络图片:

遇到的问题:
加载不出来,查看日志信息发现:

查阅资料发现Android 9.0是默认禁止所有http请求的,需要在代码中设置如以下代码才可以正常进行网络请求:
AndroidMainfest.xml 中添加:

android:usesCleartextTraffic=“true”

接下来运行还是无法加载网络图片,查看日志发现:

Glide中需要用到网络功能,因此得在 AndroidManifest.xml 中声明一下网络权限才行:

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

再次运行可以加载出来!

最后一张是网络图片,前面三张的 scaleType 值分别是:fitXY fitCentercenterCrop

使用Glide加载GIF图并不需要编写什么额外的代码,Glide内部会自动判断图片格式。只需要将核心代码中加载图片代码中的URL地址替换成想要展示GIF图的URL地址即可。

原文地址:https://www.cnblogs.com/yangdd/p/13303197.html