Android开发启动页跳过倒计时效果

news2024/10/12 13:41:15
Android开发启动页跳过倒计时效果

app启动页都会放些广告图,然后倒计时跳过。

一、思路:

不是很难,就用用个倒计时控制mHandler.sendEmptyMessageDelayed(WHAT_COUNT_DOWN, 100);

二、效果图:

在这里插入图片描述

三、关键代码:
public class MainActivity extends AppCompatActivity {

    private static final int WHAT_COUNT_DOWN = 1;

    private CircleProgress mCircleProgress;
    private ImageView mIvAd;

    private int mMaxProgressVal;
    private int mCurProgressVal;
    private List<AdBean> mAdList;
    private int mAdIndex;
    private int mInterval = 2000;

    private Handler mHandler;
    private Context mContext;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mContext = this;
        mHandler = new Handler() {
            @Override
            public void handleMessage(Message msg) {
                switch (msg.what) {
                    case WHAT_COUNT_DOWN:
                        updateCountDown();
                        break;
                }
            }
        };
        mCircleProgress = findViewById(R.id.progress);
        mIvAd = findViewById(R.id.iv_ad);
        //数据处理,一般是接口返回的,正常是不会有resImage本地图片的
        mAdList = new ArrayList<>();
        mAdList.add(new AdBean("","",R.mipmap.head1));
        mAdList.add(new AdBean("","",R.mipmap.head2));
        mAdList.add(new AdBean("","",R.mipmap.head3));
        mAdList.add(new AdBean("","",R.mipmap.head5));

        mMaxProgressVal = 4 * mInterval;
        if (mCircleProgress != null) {
            mCircleProgress.setMaxProgress(mMaxProgressVal);
        }
        if (mHandler != null) {
            mIvAd.setImageResource(mAdList.get(3).getResImage());
            mHandler.sendEmptyMessageDelayed(WHAT_COUNT_DOWN, 100);
        }
    }

    private void updateCountDown() {
        mCurProgressVal += 100;
        if (mCurProgressVal > mMaxProgressVal) {
            return;
        }
        if (mCircleProgress != null) {
            mCircleProgress.setCurProgress(mCurProgressVal);
        }
        int index = mCurProgressVal / mInterval;
        if (index < mAdList.size() && mAdIndex != index) {
            mIvAd.setImageResource(mAdList.get(mAdIndex).getResImage());
            mAdIndex = index;
        }
        if (mCurProgressVal < mMaxProgressVal) {
            if (mHandler != null) {
                mHandler.sendEmptyMessageDelayed(WHAT_COUNT_DOWN, 100);
            }
        } else if (mCurProgressVal == mMaxProgressVal) {
            Toast.makeText(mContext,"倒计时完了,做下一步操作",Toast.LENGTH_SHORT).show();
        }
    }

}
四、项目demo源码结构图:

在这里插入图片描述有问题或者需要完整源码的私信我

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2208029.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

消息队列面试题——第二篇

1. rocketmq、rabbitmq、kafka的区别 架构设计和消息模型 特性rocketmqrabbitmqkafka消息模型基于主题和消费组&#xff0c;支持发布/订阅和点对点两种模型基于队列模型&#xff0c;支持发布/订阅和点对点两种模型基于分区的主题模型&#xff0c;主要用于日志流式处理和高吞吐…

基于SSM创城志愿者管理系统JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

RNN心脏病预测

本文为为&#x1f517;365天深度学习训练营内部文章 原作者&#xff1a;K同学啊 一 前期准备 1.数据导入 import pandas as pd from keras.optimizers import Adam from matplotlib import pyplot as plt from sklearn.model_selection import train_test_split from sklearn.p…

jenkins 插件Publish Over SSH

一、安装插件 二、配置sshserver http://192.168.31.156:8080/manage/configure 三、添加自由风格&#xff1a;PublishOverSSHDemo 我们将工作目录&#xff1a;/var/lib/jenkins/workspace/PublishOverSSHDemo下的图片m3.jpeg 同步到目标143服务器目录&#xff1a;/root/imag…

Mysql(七) --- 索引

文章目录 前言1.简介1.1.索引是什么&#xff1f;1.2.为什么使用索引? 2.索引应该使用什么数据结构&#xff1f;2.1.Hash2.2.二叉搜索树2.3.N叉树2.4.B树2.4.1. 简介2.4.2. B树的特点2.4.3. B树和B树的对比 3.Mysql中的页3.1.为什么要使用页3.2.页文件头和页文件尾3.3.页主体3.…

Python开源项目月排行 2024年9月

#2024年9月2024年9月29日1jax一个开源的高性能数值计算库&#xff0c;旨在为机器学习和科学计算提供灵活性和效率。该项目由 Google 研发&#xff0c;并在 GitHub 上进行维护。AX 主要用于以下几个方面&#xff1a; 自动微分&#xff1a;提供高效的自动微分功能&#xff0c;支持…

嵌入式面试——FreeRTOS篇(九) 内存管理

本篇为&#xff1a;FreeRTOS 内存管理篇 一、FreeRTOS内存管理简介 1、FreeRTOS内存管理介绍 答&#xff1a; 在使用 FreeRTOS 创建任务、队列、信号量等对象的时&#xff0c;一般都提供了两种方法&#xff1a; 动态方法创建&#xff1a;自动地从 FreeRTOS 管理的内存堆中申…

【AI绘画教程】StableDiffusion出图颜色偏白发灰?用好VAE立马解决!(附VAE模型下载)

大家好&#xff0c;我是画画的小强 之前已经给大家推荐过不少AI绘画中 Stable Diffusion WebUI 的大模型&#xff0c;今天为大家介绍一下 WebUI 中“外挂VAE”的相关内容&#xff0c;可以解决我们在用大模型出图过程中出现的图像颜色发灰、发白的问题&#xff0c;一起来看看吧…

话说你们维保到期通知都是谁通知的

离谱了&#xff0c;公司有个客户维保到期了 过了2个月才发现。 白干了两个月&#xff0c; 客户也不愿意给这两个月钱。 现在商务和运维在扯皮&#xff0c; 商务说运维部门应该到期给客户发通知&#xff0c; 运维说商务到期要续签&#xff0c; 就应该商务去通知。 然后老…

ppt怎么做出高级感?找对高级ppt模板,轻松一键替换

想问问大家国庆节后的工作忙吗&#xff1f;小编的大厂朋友们都忙疯了&#xff01; 都在忙着做各种项目的执行总结PPT报告&#xff0c;和接下来的工作计划展望&#xff01;做出来的PPT还会被领导嫌弃排版没创意、不高级...... 这不&#xff0c;还来找小编&#xff0c;问有没有什…

水库抽样算法(大数据算法作业)

时隔一个多月&#xff0c;终于想起来写大数据算法基础的实验报告&#xff0c;主要是快截止了&#xff0c;hh 这两天加急把这个报告写完了~ 接下来&#xff0c;写一写证明过程&#xff08;参考书籍&#xff1a;高等教育出版社《数据科学与工程算法基础》&#xff09;主要代码以…

MODBUS协议介绍,通过MODBUS协议控制伺服电机工作

1.前言 modbus协议本身的介绍&#xff0c;请大家自行查阅资料。本文简单介绍一下如何通过MODBUS协议组装控制指令。 最近搞了一个项目&#xff0c;要驱动伺服电机工作。通过下位机STM32 407 100封脚 给伺服电机发控制指令。电机和下位机之前的通信采用RS485串口通信&#xff…

seaCMS v12.9代码审计学习(下半)

文章目录 admin/admin_safe.php任意文件下载CSRF 添加管理员账户CSRF配合XSS弹cookie admin/admin_safe.php任意文件下载 在admin_safe.php文件下有着这么一段代码&#xff0c;他的作用时检查action的值是否为download&#xff0c;如果为download那么将你传入的文件直接打印给…

LeetCode题练习与总结:二叉树的序列化与反序列化--297

一、题目描述 序列化是将一个数据结构或者对象转换为连续的比特位的操作&#xff0c;进而可以将转换后的数据存储在一个文件或者内存中&#xff0c;同时也可以通过网络传输到另一个计算机环境&#xff0c;采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与…

校园网环境下基于OpenWRT的路由器选型与解决方案

校园网环境下基于OpenWRT的路由器选型与解决方案 网页认证(锐捷认证)解除校园网设备限制,路由器选型和解决方案 openwrt 我们学校校园网一个账号只能登录两台设备&#xff0c;多了直接就退出联网状态&#xff0c;然后校园网是基于锐捷认证进行认证的&#xff0c;然后通过ment…

基于逻辑回归实现乳腺癌预测

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

使用IDEA生成API文档

1. 在IDEA中&#xff0c;Tools->Generate JavaDoc Scope 2.Output Directory里面放&#xff0c;生成的目录。 Other command line arguments:-encoding utf-8 -charset utf-8&#xff08;解决乱码&#xff09; 3.点击ok&#xff0c;生成的效果图

构建数字文化产业链,拓展文化产业发展空间

在当今全球化和数字化的双重浪潮下&#xff0c;文化产业正以前所未有的速度进行变革和升级。作为文化与科技深度融合的产物&#xff0c;数字文化产业链正以其独特的魅力和无限的潜力&#xff0c;引领文化产业向更高层次、更广领域迈进。 数字文化产业链的构建&#xff0c;不仅…

特斯拉智驾路线影响国内OEM组织架构变革,Robotaxi重塑汽车定位搅动风云

智驾研发组织面向端到端进行调整,车企内部研发资源聚焦,智驾方案选择将快速收敛 特斯拉在智驾领域的技术方向被国内车企当作学习的范本,而技术路线的切换往往伴随组织架构的调整。特斯拉 FSD 团队人员规模在数百人,但数据积累和训练算力领先。智驾研发迈向端到端使得车企研…

QD1-P13 HTML 表单标签(form)

本节学习 HTML 表单标签&#xff1a;form ‍ 本节视频 www.bilibili.com/video/BV1n64y1U7oj?p13 ‍ 知识点1&#xff1a;form标签的用途 ​form​ 标签在HTML中用于创建一个表单&#xff0c;它允许用户输入数据&#xff0c;然后可以将这些数据发送到服务器进行处理。以下…