Android : How to wait until Timer and Timertask finish their work on UI Thread -


i have fragment. in fragment, have timer run timertask periodically. override onpause when switch fragment, timertask , timer stop work.

@override         public void onpause() {             super.onpause();             timertask.cancel();             timer.cancel();             timer.purge();         } 

and here code switching fragment :

orderfragment fragment2 = new orderfragment();                     fragment2.setarguments(arguments);                     getsupportfragmentmanager().begintransaction().replace(r.id.item_detail_container, fragment2).commit(); 

but when switch different fragment, receive null point exception because timertask cannot access ui thread anymore (because have used runonuithread )

so, question : how sure timer , timertask stop work, before can change fragment.

thanks :)

it seems onhiddenchanged(boolean hidden) need. fragment onpause() documentation:

this tied activity.onpause of containing activity's lifecycle.

so onpause() isn't called when fragment no longer visible. move timer canceling code onhiddenchanged().


Comments

Popular posts from this blog

ios - iPhone/iPad different view orientations in different views , and apple approval process -

monitor web browser programmatically in Android? -

c# - Using multiple datasets in RDLC -