It's not working because it will execute all methods without any delay between them so you will get the feeling that only the last one is working and if the last one is restoring the initial state, you'll feel like nothing is happening.
I suggest you wrap the method inside an asyncTask
and set some delay between the method calls. It should be straight forward enough.