Android定時器和Handler用法實例分析
本文實例講述了Android定時器和Handler用法。分享給大家供大家參考。具體分析如下:
一、環(huán)境:
主機:WIN8
開發(fā)環(huán)境:Android Studio
二、定時器使用示例:
初始化:
//定時器 private Timer Timer_Work = new Timer(); //工作間隔,單位:ms private final int INTERVAL_WORK = 5000;
創(chuàng)建定時器線程:
/**
* 構(gòu)造函數(shù)
*/
public Config() {
//生成配置信息
generate_config_info();
//創(chuàng)建定時線程
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組合產(chǎn)生線程示例:
延時200ms調(diào)用runnable
handler.postDelayed(runnable, 200);
產(chǎn)生線程:
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程序設(shè)計有所幫助。
相關(guān)文章
Android仿網(wǎng)易新聞圖片詳情下滑隱藏效果示例代碼
這篇文章主要給大家介紹了關(guān)于利用Android如何仿網(wǎng)易新聞圖片詳情下滑隱藏效果的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-07-07
Android自定義ViewGroup實現(xiàn)可滾動的橫向布局(2)
這篇文章主要介紹了Android自定義ViewGroup實現(xiàn)可滾動的橫向布局,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12
Android實現(xiàn)ImageView圖片雙擊放大及縮小
這篇文章主要介紹了Android實現(xiàn)ImageView圖片雙擊放大及縮小的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-02-02
Android進階NestedScroll嵌套滑動機制實現(xiàn)吸頂效果詳解
這篇文章主要為大家介紹了Android進階NestedScroll嵌套滑動機制實現(xiàn)吸頂效果詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01
Android 操作系統(tǒng)獲取Root權(quán)限 原理詳細解析
許多機友新購來的Android機器沒有破解過Root權(quán)限,無法使用一些需要高權(quán)限的軟件,以及進行一些高權(quán)限的操作,其實破解手機Root權(quán)限是比較簡單及安全的,破解Root權(quán)限的原理就是在手機的/system/bin/或/system/xbin/目錄下放置一個可執(zhí)行文件“su”2013-10-10
Android自定義View實現(xiàn)自動轉(zhuǎn)圈效果
這篇文章主要為大家詳細介紹了Android自定義View實現(xiàn)自動轉(zhuǎn)圈效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-05-05
Android編程實現(xiàn)獲得內(nèi)存剩余大小與總大小的方法
這篇文章主要介紹了Android編程實現(xiàn)獲得內(nèi)存剩余大小與總大小的方法,涉及Android基于ActivityManager實現(xiàn)內(nèi)存信息的操作技巧,需要的朋友可以參考下2015-12-12

