前言
在上一节中,我们学习了DataBinding
的基本使用,大家有兴趣的话可以参看以下文章
DataBinding(一) — 基本使用
这节让我们来学习下DataBinding
是如何加载图片的。
今天涉及以下内容:
- 前期准备
-
DataBinding
加载本地图片 -
DataBinding
加载网络图片 -
DataBinding
加载网络图片失败则加载本地图片
运行效果图
![](https://img.haomeiwen.com/i6127340/7027b560b8715be9.png)
一. 前期准备
1.1 引入图片加载框架 Picasso
由于涉及到网络图片加载,这里我们使用网络图片加载框架Picasso
,在app_module
对应的build.gradle
中加入以下依赖:
dependencies {
//picasso图片加载
implementation 'com.squareup.picasso:picasso:2.71828'
}
1.2 引入kotlin注解库
DataBinding
加载图片的过程中,需要用到注解,所以我们需要在app_module
对应的build.gradle
中加入以下依赖:
plugins {
id 'kotlin-kapt'
}
1.3 网络权限
图片加载涉及到网络权限,在Androidmainfast.xml
中加入以下网络权限:
<uses-permission android:name="android.permission.INTERNET"/>
然后在res/xml/
文件夹下新建network_security_config.xml
文件,该文件内容如下:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<!--允许访问http协议-->
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
接着在Androidmainfast.xml
添加network_security_config.xml
文件授权允许Android使用http
通讯:
<application
android:networkSecurityConfig="@xml/network_security_config"
//其他代码省略
//......
>
至此,准备工作就绪。
二. DataBinding 加载本地图片
先建一个加载图片的类ImageViewBindingAdapter
,代码如下:
网友评论