android 的API的handler翻譯

繼承順序:java.lang.Object-->android.os.Handler

直接子類:AsyncQueryHandler,HttpAuthHandler,SslErrorHandler

public class Handler extends Object

一個(gè)Handler允許你傳遞、處理Message和Runnable對象,通過相關(guān)聯(lián)的thread的消息隊(duì)列(MessageQueue).每個(gè)handler實(shí)例都與一個(gè)thread相關(guān)聯(lián)和特定的消息隊(duì)列。當(dāng)你創(chuàng)建了一個(gè)新的Handler,他就綁定到了這個(gè)thread的thread或者message隊(duì)列,而這個(gè)thread從創(chuàng)建的地點(diǎn)將傳遞消息和runnables到那個(gè)消息隊(duì)列,且處理那些從消息隊(duì)列中出來消息。

有兩種主要的使用方式,1、有計(jì)劃的處理message和runnable,在未來的某個(gè)時(shí)刻。2、在非你的另外的線程上執(zhí)行一個(gè)方法。

計(jì)劃消息使用下列方法處理:post(java.lang.Runnable),postAtTime(Runnable,long),postDelayer(java.lang.Runnable,long),sendEmptyMessage(int),sendMessage(android.os.Message),sendMessageAtTime(android.os.Message,long),和sendMessageDelayed(android.os.Message,long)。消息隊(duì)列調(diào)用post方法允許你講Runnable對象壓入隊(duì)列,當(dāng)被接收的時(shí)候。當(dāng)Handler的handleMessage方法處理一束Message包含的數(shù)據(jù)的時(shí)候,允許你壓入message進(jìn)入隊(duì)列(需要你實(shí)現(xiàn)一個(gè)Handler的子類)。

當(dāng)提交或者傳遞一個(gè)Handler的時(shí)候,你既可以讓item處理與消息隊(duì)列準(zhǔn)備好一樣快,或者指定一個(gè)延遲在他被處理或者被處理前的絕對時(shí)間間隔。后兩者需要你實(shí)現(xiàn)時(shí)間、軌跡和其他的時(shí)間基本行為。

當(dāng)應(yīng)用創(chuàng)建好一個(gè)process,他的主線程決定運(yùn)行一個(gè)消息隊(duì)列,這個(gè)隊(duì)列接管著應(yīng)用最高等級的對象(activities,broadcast,receivers,etc)和他們創(chuàng)建的任意的窗口。你可以創(chuàng)建你的自己的threads和通訊,通過一個(gè)Handler與主線程完成回調(diào)。在完成之前調(diào)用相同的post或者sendMessage方法,但是通過新的thread.給定的Runnable或者M(jìn)essage將被添加到Handler的消息隊(duì)列,且在適當(dāng)?shù)臅r(shí)候完成處理。

一、嵌套類摘要

?Handler.Callback

在你實(shí)例化一個(gè)Handler的時(shí)候你可以使用Callback接口用來避免必須實(shí)現(xiàn)你自己的Handler子類。、

二、構(gòu)造方法摘要

Handler()

默認(rèn)的構(gòu)造方法使得該handler與當(dāng)前的thread隊(duì)列相關(guān)聯(lián)。

Handler(Handler.Callback callback)

與當(dāng)前的thread隊(duì)列想關(guān)聯(lián)且在回調(diào)接口中可以處理message

Handler(Looper looper)

使用自定義的隊(duì)列代替默認(rèn)的隊(duì)列。

Handler(Looper looper,Handler.Callback callback)

使用自定義的隊(duì)列代替默認(rèn)的隊(duì)列且在回調(diào)接口中處理message

三、方法摘要

dispatchMessage(Message msg):處理系統(tǒng)的信息

dump(Printer pw, String prefix)

getLooper()

handleMessage(Message msg)子類必須實(shí)現(xiàn)這個(gè)來接收消息

hasMessage(int what):檢查消息中的what是否含有消息且obj在隊(duì)列中是否是對象。

obtainMessage():從全局message池返回一個(gè)新的Message

obtainMessage(int what):功能同上,除了能夠設(shè)置返回消息中的member屬性

obtainMessage(int what,int arg1,int arg2):功能同obtainMessage(),除了能設(shè)置what arg1, arg2這些屬性。

obtainMessage(int what,int arg1,int arg2,Object obj):功能同不帶參數(shù)的方法,除了能夠設(shè)置what ,obj,arg1,arg2值。

obtainMessage(int what,Object obj):功能同無參數(shù)方法一樣,除了能設(shè)置what和obj屬性值。

post(Runnable r):使得Runnable r添加到消息隊(duì)列。

postAtFrontOfQueue(Runnable r):提交一個(gè)消息到一個(gè)實(shí)現(xiàn)了Runnable的對象

postAtTime(Runnable r,long uptimeMillis):使得Runnable r被添加到消息隊(duì)列,在由uptimeMills給定的特定時(shí)間

postAtTime(Runnable r , Object token, long uptimeMills):使得Runnable r添加到消息隊(duì)列,在由uptimeMills給定的特定時(shí)間運(yùn)行。

postDelayer(Runnable r , long delayMillis):使得Runnable r被添加到隊(duì)列,在由指定的時(shí)間后運(yùn)行。

removeCallbacks(Runnable r):移除在消息隊(duì)列中的沒有提交的Runnable r

removeCallbacks(Runnable r,Object token):移除在消息隊(duì)列中使用Object 的token的沒有提交的Runnable r.

removeCallbacksAndMessage(Object token):移除在回調(diào)函數(shù)中沒有提交的消息且發(fā)送消息的obj是token

voidremoveMessages(int what)

Remove any pending posts of messages with code 'what' that are in the message queue.

voidremoveMessages(int what,Objectobject)

Remove any pending posts of messages with code 'what' and whose obj is 'object' that are in the message queue.

booleansendEmptyMessage(int what)

Sends a Message containing only the what value.

booleansendEmptyMessageAtTime(int what, long uptimeMillis)

Sends a Message containing only the what value, to be delivered at a specific time.

booleansendEmptyMessageDelayed(int what, long delayMillis)

Sends a Message containing only the what value, to be delivered after the specified amount of time elapses.

booleansendMessage(Messagemsg)

Pushes a message onto the end of the message queue after all pending messages before the current time.

booleansendMessageAtFrontOfQueue(Messagemsg)

Enqueue a message at the front of the message queue, to be processed on the next iteration of the message loop.

booleansendMessageAtTime(Messagemsg, long uptimeMillis)

Enqueue a message into the message queue after all pending messages before the absolute time (in milliseconds)uptimeMillis.

booleansendMessageDelayed(Messagemsg, long delayMillis)

Enqueue a message into the message queue after all pending messages before (current time + delayMillis).

StringtoString()

Returns a string containing a concise, human-readable description of this object.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,182評論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,489評論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,290評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,776評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,510評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,866評論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,860評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,036評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,585評論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,331評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,536評論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,058評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,754評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,154評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,469評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,273評論 3 399
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,505評論 2 379

推薦閱讀更多精彩內(nèi)容