android 定时器实例,Android定时器和Handler用法实例分析

android 定时器实例,Android定时器和Handler用法实例分析本文实例讲述了android定时器和handler用法。分享给大家供大家参考。具体分析如下:一、环境:主机:win8开发环境:androidstudio二、定时器使用示例:初始化://定时器privatetimertimer_work=newtimer();//工作间隔,单位:msprivatefinalintinterval_work=5000;创建定时器线程:/***构…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

本文实例讲述了android定时器和handler用法。分享给大家供大家参考。具体分析如下:

一、环境:

主机:win8

开发环境:android studio

二、定时器使用示例:

初始化:

//定时器

private timer timer_work = new timer();

//工作间隔,单位:ms

private final int interval_work = 5000;

创建定时器线程:

/**

* 构造函数

*/

public config() {

//生成配置信息

generate_config_info();

//创建定时线程

timer_work.schedule(new task(), interval_work, interval_work);

// 定时任务

}

新建任务:

/**

* 定时器线程定时工作

*/

private class task extends timertask {

@override

public void run() {

generate_config_info();

}

}

三、定时器和handler组合工作,更新ui示例(定时器线程不能直接更新ui):

定时器任务:

/**

* 定时器线程定时工作

*/

private class task extends timertask {

@override

public void run() {

if (get_state() == enum_state.free)

{

connect(“10.58.1.59”,8906);

}

if (get_state() == enum_state.connect_success)

{

login(“tiantian”,””);

}

if (get_state() == enum_state.login_success)

{

enter_room(1,””);

}

if (get_state() == enum_state.enter_room_success)

{

message message = new message();

message.what = 1;

handler.sendmessage(message);

}

}

}

handler处理信息:

private handler handler = new handler() {

public void handlemessage(message msg) {

switch (msg.what)

{

case 1:

{

system.out.println(“sdk打开视频准备”);

video(-224);

break;

}

}

super.handlemessage(msg);

}

};

四、handler和runnable组合产生线程示例:

延时200ms调用runnable

handler.postdelayed(runnable, 200);

产生线程:

handler handler = new handler();

runnable runnable = new runnable() {

@override

public void run() {

try {

int videobitrate = anychatsdk.queryuserstateint(userid, anychatdefine.brac_userstate_videobitrate);

if (videobitrate > 0)

{

handler.removecallbacks(runnable);

motherview.setbackgroundcolor(color.transparent);

}

handler.postdelayed(runnable, 200);

} catch (exception e) {

e.printstacktrace();

}

}

};

希望本文所述对大家的android程序设计有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160028.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MMC卡修复心得与方法

    MMC卡修复心得与方法手机内存卡修复1.放存储卡在电脑识别.放到手机不识别!!这种情况往往是因为存储卡在电脑上进行格式化,但是格式化与手机不兼容.解决方法是吧卡放回手机,用手机中的”格式化存储卡”功能从新格式化!!2.手机提示”拔出存储卡,请按确定”按照提示将卡拔出来,一会再插入手机就可以继续使用,但是过不了多久有在回提示拔卡,如此反复!!这是因为经常插拔存储卡,导致手机存储卡槽松动接触不良.

  • oracle 10g数据库连接时,错误ora12514 解决办法

    oracle 10g数据库连接时,错误ora12514 解决办法主要注意三点:1。在oracle安装目录下,..\oracle\product\10.2.0\db_1\NETWORK\ADMIN修改listener.ora文件,SID_LIST_LISTENER =  (SID_LIST =    (SID_DESC =      (SID_NAME = PLSExtProc)      (ORACLE_HOME = D:\oracle

  • NFV报告_nf检查具体怎么检查

    NFV报告_nf检查具体怎么检查1报告概述《2015年网络功能虚拟化(NFV)报告》将为读者提供关于NFV市场的发展趋势,以及目前取得进展等方面的观点。我们已经开始看到,在运营商,甚至在企业网上,越来越多的概念验证(POC)已经进行了尝试。因此目前非常重要的一件事情,就是认识到NFV对于整个网络产业所带来的巨大变化。NFV以软件的方式实现网络的功能,因此能够部署在虚拟环境,以及通用的标准硬件上。这能够满足运营商

  • 达人评测小米平板5怎么样[通俗易懂]

    达人评测小米平板5怎么样[通俗易懂]小米平板5系列将推出三款新机,均会搭载高通处理器,分别为骁龙870、骁龙860和骁龙768G,分别对应高、中、低三个档位,无论是学习还是娱乐、工作,小米平板5都能提供匹配的体验。骁龙870大家此前已经非常熟悉,目前市面上已经有多款搭载该芯片的产品亮相,而骁龙860目前还未在国内上市。据悉,骁龙860处理器是此前骁龙855Plus的增强版,采用7nm工艺打造,CPU主频为2.96GHz,为1+3+4的三丛集架构设计,超大核为Kryo485,并且在5G、内存等和方面带来了全新提升,性能更..

  • 配置JDK环境变量(详细图文教程)

    配置JDK环境变量(详细图文教程)配置JDK环境变量(详细图文教程)

  • 39、文件的加密

    39、文件的加密

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号