下面列出了android.app.Fragment#onDestroy ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private void testLifecycle(LifecycleProvider<FragmentEvent> provider) {
Fragment fragment = (Fragment) provider;
FragmentTestUtil.startFragment(fragment);
TestObserver<FragmentEvent> testObserver = provider.lifecycle().skip(1).test();
fragment.onAttach(null);
fragment.onCreate(null);
fragment.onViewCreated(null, null);
fragment.onStart();
fragment.onResume();
fragment.onPause();
fragment.onStop();
fragment.onDestroyView();
fragment.onDestroy();
fragment.onDetach();
testObserver.assertValues(
FragmentEvent.ATTACH,
FragmentEvent.CREATE,
FragmentEvent.CREATE_VIEW,
FragmentEvent.START,
FragmentEvent.RESUME,
FragmentEvent.PAUSE,
FragmentEvent.STOP,
FragmentEvent.DESTROY_VIEW,
FragmentEvent.DESTROY,
FragmentEvent.DETACH
);
}
private void testBindToLifecycle(LifecycleProvider<FragmentEvent> provider) {
Fragment fragment = (Fragment) provider;
startFragment(fragment);
fragment.onAttach(null);
TestObserver<Object> attachObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onCreate(null);
attachObserver.assertNotComplete();
TestObserver<Object> createObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onViewCreated(null, null);
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
TestObserver<Object> createViewObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onStart();
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
createViewObserver.assertNotComplete();
TestObserver<Object> startObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onResume();
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
createViewObserver.assertNotComplete();
startObserver.assertNotComplete();
TestObserver<Object> resumeObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onPause();
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
createViewObserver.assertNotComplete();
startObserver.assertNotComplete();
resumeObserver.assertComplete();
TestObserver<Object> pauseObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onStop();
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
createViewObserver.assertNotComplete();
startObserver.assertComplete();
pauseObserver.assertComplete();
TestObserver<Object> stopObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onDestroyView();
attachObserver.assertNotComplete();
createObserver.assertNotComplete();
createViewObserver.assertComplete();
stopObserver.assertComplete();
TestObserver<Object> destroyViewObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onDestroy();
attachObserver.assertNotComplete();
createObserver.assertComplete();
destroyViewObserver.assertComplete();
TestObserver<Object> destroyObserver = observable.compose(provider.bindToLifecycle()).test();
fragment.onDetach();
attachObserver.assertComplete();
destroyObserver.assertComplete();
}