当前位置:网站首页>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
边栏推荐
猜你喜欢
随机推荐
软件测试回归案例,什么是回归测试?
Unity gets the actual coordinates of the ui on the screen under the canvas
Interview Blitz: What Are Sticky Packs and Half Packs?How to deal with it?
【leetcode】剑指 Offer II 007. 数组中和为 0 的三个数(双指针)
Brush the topic of mobile zero power button
【Azure 事件中心】使用Azure AD认证方式创建Event Hub Consume Client + 自定义Event Position
Postgresql源码(64)查询执行——子模块Executor(2)执行前的数据结构和执行过程
「游戏建模干货」建模大师几步操作,学习经典,赶紧脑补一下吧
LeetCode 622. 设计循环队列
利用net-snmp的库实现snmpget,snmpset
Standard C language learning summary 11
【leetcode】剑指 Offer II 009. 乘积小于 K 的子数组(滑动窗口、双指针)
力扣刷题之求两数之和
Redis 内存满了怎么办?这样置才正确!
Shell programming loop statement
数据驱动的软件智能化开发| ChinaOSC
友宏医疗与Actxa签署Pre-M Diabetes TM 战略合作协议
力扣刷题之合并两个有序数组
Power button brush the topic of merging two orderly array
CS kill-free pose