大家知道Android Handler的使用嗎?下面我們就給大家詳細介紹一下吧!
我們進行Android開發時,Handler可以說是使用非常頻繁的一個概念,它的用處不言而喻。本文就詳細介紹Handler的基本概念和用法。
Handler的基本概念
Handler主要用於異步消息的處理:當發出一個消息之後,首先進入一個消息隊列,發送消息的函數即刻返回,而另外一個部分逐個的在消息隊列中將消息取出,然後對消息進行出來,就是發送消息和接收消息不是同步的處理。 這種機制通常用來處理相對耗時比較長的操作。
Handler工具類在多線程中有兩方面的應用:
1、發送消息,在不同的線程間發送消息,使用的方法為sendXXX();。
android.os.Handler對象通過下面的方法發送消息的:
sendEmptyMessage(int),發送一個空的消息;
sendMessage(Message),發送消息,消息中可以攜帶參數;
sendMessageAtTime(Message, long),未來某一時間點發送消息;
sendMessageDelayed(Message, long),延時Nms發送消息。
2、計劃任務,在未來執行某任務,使用的方法為postXXX();。
android.os.Handler對象通過下面的方法執行計劃任務:
post(Runnable),提交計劃任務馬上執行;
postAtTime(Runnable, long),提交計劃任務在未來的時間點執行;
postDelayed(Runnable, long),提交計劃任務延時Nms執行。
開發步驟:
1、新建一個Android應用程序
2、在布局文件中添加2個Button控件標簽,並為其設置屬性和值
3、在Activity中,聲明控件變量並根據id獲得控件對象
4、在Activity中,創建一個Handler對象
5、在Activity中,創建一個Runnable對象
a) 以匿名內部類的方式
b) 將要執行的操作寫在Runnable對象中的run()方法中
i. 打印出一句話
ii. 調用Runnable對象的postDelayed()方法
6、在Activity中,編寫start按鈕需要的監聽器,並綁定。
在這個監聽器的Onclick()方法中,調用Handler的post()方法,將要執行的線程對象放到隊列當中。
7、在Activity中,編寫end按鈕需要的監聽器,並幫定。
在這個監聽器的Onclick()方法中,調用Handler的removeCallbacks ()方法,刪除隊列當中未執行的線程對象。
相信大家已經學會Android Handler的使用了吧!感謝大家對我們網站的支持!
相關推薦:
把fragment添加到activity的方法