Android开发:编程实现界面定时刷新
最近在开发过程中遇到一个需求,要求间隔固定时间主动更新界面的内容。调研了之后发现可以使用Handler机制实现上述功能,记录一下。
使用Handler机制实现的逻辑是,在Activity首次创建的时候使用Handler的sendEmptyMessageDelayed方法延时发送一次消息;并重写Handler的handleMessage方法,在该方法中:1.进行页面刷新操作;2.再次使用Handler进行消息的延时发送,以此实现重复的定时刷新功能,具体代码如下:
public class MainActivity extends AppCompatActivity {private Handler handlerSend = new Handler(){@Overridepublic void handleMessage(@NonNull Message msg) {// 重写handleMessage方法super.handleMessage(msg);if (msg.what == 1) {Toast.makeText(getApplicationContext(), "页面刷新成功!", Toast.LENGTH_SHORT).show();// 再次使用handler发送信息handlerSend.sendEmptyMessageDelayed(1, 1000);}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// Activity首次创建,使用Handler发送一次消息handlerSend.sendEmptyMessageDelayed(1, 1000);}
}
注:界面定时刷新功能也可以使用Timer定时器进行实现,感兴趣的伙伴可以自行了解~
Android开发:编程实现界面定时刷新相关推荐
- 如何学习Android开发编程-初学者的5个步骤
如何学习Android开发编程-初学者的5个步骤 在本文中,您将发现如何学习Android开发编程.了解如何成为一名Android开发人员,并按照以下5个步骤操作. 您是否想学习Android?如果是 ...
- Android开发——APP门户界面设计
AS开发--APP门户界面设计01 内容简介 需求分析 UI设计 top content bottom 后端功能设计 top content bottom 代码模块讲解 layout activity ...
- Android开发丶历史界面时光轴的实现
一般在资讯类app的项目需求中,我们会经常面临着历史界面,呈现浏览记录等等,一般在每条资讯上面都会出现一个时间,当我看到时光轴这种界面,瞬间被吸引到了,觉得这么炫酷的效果,是不是用的什么开源库或者控件 ...
- android开发之欢迎界面
首先你得写好xml文件,这也是最主要的. 然后,在activity中加入一个线程,延时2秒,用来跳转到主界面. activity中线程代码如下:(顺便检测一下网络是否打开) @Overrideprot ...
- 【解决方案】Android开发填坑之RecyclerView刷新闪烁
问题描述 RecyclerView数据刷新闪烁. 问题原因分析 RecyclerView有一个RecyclerViewPool用来缓存已创建的item,不手动创建RecyclerViewPool时,系 ...
- android 程序后台运行,定时刷新,像qq那样,即使程序不启动也照样运行
开发过程所遇到的问题 1.android如何能够在后台偷偷的运行 实现代码 <pre name="code" class="java">Intent ...
- Android开发学习持续更新中
Android开发 单个Activity界面内的操作 控件1TextView控件使用 控件2Button控件使用 1首先对于android的按键格式 2对按键监听事件进行绑定 控件3EditText文 ...
- Android开发知识体系!Android面试吃透这一篇就没有拿不到的offer!挥泪整理面经
1.项目介绍 Flutter是目前比较流行的跨平台开发技术,凭借其出色的性能获得很多前端技术爱好者的关注,比如阿里闲鱼,美团,腾讯等大公司都有投入相关案例生产使用. 基于Flutter+Dart+ch ...
- 安卓开发陀螺仪!首发10万字Android开发实战文档,进阶学习资料!
Gradle是什么? Gradle是一种构建语言,目前是Android的默认构建工具,我们编写的编译脚本,其实就是玩Gradle的API,所以从它更底层的意义上看,是一个编程框架. 因为涉及的内容很多 ...
最新文章
- 深入理解Java的接口和抽象类
- 详解pytorch中的常见的Tensor数据类型以及类型转换
- eclipse中使用javadoc生成文档
- 100c之53:说谎族和诚实族
- linux中更新perl的版本
- 消息映射的服务器的设计与实现
- .NET CORE(C#) WPF简单菜单MVVM绑定
- 机器学习笔记(五)续——朴素贝叶斯算法的后验概率最大化含义
- linux命令编写,Linux alias命令编写
- python最强脚本工具_8种常用的Python工具
- GridViewObjectDataSource新特性小记 懒人篇(一) 分页上路
- mysql sql security_MySQL笔记-definer与SQL SECURITY
- 适用于5G网络的SAF Spectrum Compact 频谱仪
- NUVOTON新唐单片机使用总结
- web实现微信9宫格
- 2021-07-27 百度飞桨AI达人创造营手账
- Android开发日志打卡APP(二)
- 单页面SPA(如react,vue)网站的服务器渲染SSR之SEO大杀器rendertron(超详细配置+避坑)
- 密码字典大全(seclists)
- 真正射影像(TrueOrtho)的生产和应用
热门文章
- 牛逼的人都是相似的,而苦逼的人则各有各的苦逼
- linux下使用命令lha压缩成.lzh文件包
- CKEditor 3.4 配置方法
- 哲学家都干了什么_编码和道德规范,为什么科技市场需要哲学家
- 什么是内测分发?怎么样进行内测分发?
- Linux发展史及简介
- 怎么创建html元素节点,怎么用DOM创建a节点
- java同一个包是什么意思_java中包到底是什么意思?包访问权限又是什么意思,有C++基础。...
- 极简栈溢出程序逆向分析
- springcloud 启动 Run Dashboard