android handler.removeCallbacksAndMessages(null)的使用
handler.removeCallbacksAndMessages(null)。
這個其實很簡單,之前我也寫了一篇博客將關于handler.removeMessages(int what)的使用,那個是刪除handler的特定的消息,而如果需要刪除handler所有的消息和回調函數呢?那就需要使用handler.removeCallbacksAndMessages(null)。
查api:
public final void?removeCallbacksAndMessages?(Object?token)
Added in?API level 1Remove any pending posts of callbacks and sent messages whose?obj?is?token. If?token?is null, all callbacks and messages will be removed.
這是google文檔解釋,英語不好的請用有道翻譯,
刪除任何懸而未決的帖子回調函數和發送消息的obj令牌。如果令牌是空的,所有的回調函數和消息將被刪除
當然這個翻譯不太準確,意思就是說當參數為null時,刪除所有回調函數和message
這樣做的好處是在Acticity退出的時候,可以避免內存泄露
簡單講講,就是在Acticity退出時最好調用handler.removeCallbacksAndMessages(null),移除handler的所有消息,避免內存泄漏。記住調用handler.removeCallbacksAndMessages(null)只會移除當前handler的所有消息,如何存在多個handler,需要每一個handler都調用一次。
android? handler.removeCallbacksAndMessages(null)的使用就講完了。
就這么簡單。
總結
以上是生活随笔為你收集整理的android handler.removeCallbacksAndMessages(null)的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android clipChildren
- 下一篇: android StringBuilde