javaandroidcallbackandroid-handler

How to remove all callbacks from a Handler?


I have a Handler from my sub-Activity that was called by the main Activity. This Handler is used by sub-classes to postDelay some Runnables, and I can't manage them. Now, in the onStop event, I need to remove them before finishing the Activity (somehow I called finish(), but it still call again and again). Is there anyway to remove all callbacks from a Handler?


Solution

  • In my experience calling this worked great!

    handler.removeCallbacksAndMessages(null);
    

    In the docs for removeCallbacksAndMessages it says...

    Remove any pending posts of callbacks and sent messages whose obj is token. If token is null, all callbacks and messages will be removed.