当前位置:网站首页>glide set gif start stop
glide set gif start stop
2022-08-03 19:34:00 【勘察加熊人】
一张gif图片,控制播放和暂停,用了一个取巧的办法实现的,使用glide和selector.xml文件实现
step1: D:\workspace\MyApplication26\app\build.gradle
implementation 'com.github.bumptech.glide:glide:4.11.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
step2:
package com.example.ali.myapplication
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.ImageView
import com.bumptech.glide.Glide
class MainActivity : AppCompatActivity() {
private lateinit var btn_start: Button
private lateinit var btn_stop: Button
private lateinit var iv_rc_home: ImageView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
btn_stop = findViewById(R.id.btn_stop)
btn_start = findViewById(R.id.btn_start)
iv_rc_home = findViewById(R.id.iv_rc_home)
btn_start.setOnClickListener {
Glide.with(this).load(R.drawable.fan_five.gif).into(iv_rc_home);
}
btn_stop.setOnClickListener {
Glide.with(this).load(R.drawable.home_select_fan.xml).into(iv_rc_home);
}
}
}
step3: home_select_fan.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/fan_five.gif" />
</selector>
step4:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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" tools:context=".MainActivity">
<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical">
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" />
<Button android:id="@+id/btn_start" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始播放" />
<Button android:id="@+id/btn_stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="停止" />
<ImageView android:id="@+id/iv_rc_home" android:layout_width="335dp" android:layout_height="252dp" android:src="@mipmap/ic_launcher" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
end
边栏推荐
- 阿里巴巴政委体系-第九章、阿里政委启示录
- 力扣解法汇总899-有序队列
- The addition and subtraction of the score of the force deduction brush question (a daily question 7/27)
- 阿里二面:多线程间的通信方式有几种?举例说明
- 盲僧发现了华点——教你如何使用API接口获取数据
- docker mysql 容器中执行mysql脚本文件并解决乱码
- Radondb mysql installation problems
- Climbing Stairs (7/30)
- if/else或switch替换为Enum
- Solution for no navigation bar after Word is saved as PDF
猜你喜欢
随机推荐
【leetcode】剑指 Offer II 009. 乘积小于 K 的子数组(滑动窗口、双指针)
【C语言学习笔记(七)】C语言重定向输入与输出
Execute the mysql script file in the docker mysql container and solve the garbled characters
FreeRTOS Intermediate
系统太多,多账号互通如何实现?
2022年最新的Android面试大厂必考174题(附带详细答案)
SQL server 实现触发器备份表数据
网络协议-TCP、UDP区别及TCP三次握手、四次挥手
mysql跨库关联查询(dblink)
读取 resources 目录下的文件路径的九种方式,你知道多少?
YAML中多行字符串的配置方法:|+、 |、 |-、 >+、 >、 >-的区别
怎么将自己新文章自动推送给自己的粉丝(巨简单,学不会来打我)
Power button brush the topic of merging two orderly array
【leetcode】剑指 Offer II 008. 和大于等于 target 的最短子数组(滑动窗口,双指针)
Unity gets the actual coordinates of the ui on the screen under the canvas
redis常用命令,HSET,XADD,XREAD,DEL等
X86 function call model analysis
CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统
docker mysql 容器中执行mysql脚本文件并解决乱码
手把手教你定位线上MySQL慢查询问题,包教包会









