@Nullable @Override public FragmentManager getFragmentManager(FragmentActivity activity) { return activity.getSupportFragmentManager(); } }
public static void startFragment( Fragment fragment ) { FragmentActivity activity = Robolectric.buildActivity( FragmentActivity.class ) .create() .start() .resume() .get(); FragmentManager fragmentManager = activity.getSupportFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.add( fragment, null ); fragmentTransaction.commit(); }
@Override public void watchFragments(Activity activity) { if (activity instanceof FragmentActivity) { FragmentManager supportFragmentManager = ((FragmentActivity) activity).getSupportFragmentManager(); supportFragmentManager.registerFragmentLifecycleCallbacks(fragmentLifecycleCallbacks, true); } } }
private static FragmentManager buildSupportFragmentManager(Class<? extends FragmentActivity> fragmentActivityClass) { FragmentActivity activity = Robolectric.setupActivity(fragmentActivityClass); return activity.getSupportFragmentManager(); }
private void clickedOn(@NonNull Fragment fragment) { final String tag = fragment.getClass().toString(); getActivity() .getSupportFragmentManager() .beginTransaction() .addToBackStack(tag) .replace(android.R.id.content, fragment, tag) .commit(); } }
@NonNull SupportRequestManagerFragment getSupportRequestManagerFragment(FragmentActivity activity) { return getSupportRequestManagerFragment( activity.getSupportFragmentManager(), /*parentHint=*/ null, isActivityVisible(activity)); }
@Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); getActivity() .getSupportFragmentManager() .beginTransaction() .replace(R.id.demo_rxbus_frag_1, new RxBusDemo_TopFragment()) .replace(R.id.demo_rxbus_frag_2, new RxBusDemo_Bottom3Fragment()) //.replace(R.id.demo_rxbus_frag_2, new RxBusDemo_Bottom2Fragment()) //.replace(R.id.demo_rxbus_frag_2, new RxBusDemo_Bottom1Fragment()) .commit(); }
@Override public void run() { activityController .create(bundle) .get() .getSupportFragmentManager() .beginTransaction() .add(contentViewId, fragment) .commitNow(); } });
/** 关联数据支持同时切换fragments */ public void setTabData(String[] titles, FragmentActivity fa, int containerViewId, ArrayList<Fragment> fragments) { mFragmentChangeManager = new FragmentChangeManager(fa.getSupportFragmentManager(), containerViewId, fragments); setTabData(titles); }
/** 关联数据支持同时切换fragments */ public void setTabData(ArrayList<CustomTabEntity> tabEntitys, FragmentActivity fa, int containerViewId, ArrayList<Fragment> fragments) { mFragmentChangeManager = new FragmentChangeManager(fa.getSupportFragmentManager(), containerViewId, fragments); setTabData(tabEntitys); }
@Override public boolean hasFragmentWithTag(String tag) { return controller.get().getSupportFragmentManager() .findFragmentByTag(RequestManagerRetriever.FRAGMENT_TAG) != null; }
public static CountDownLatch waitForFragmentDetached(FragmentActivity activity) { final CountDownLatch latch = new CountDownLatch(1); final FragmentManager fragmentManager = activity.getSupportFragmentManager(); fragmentManager.registerFragmentLifecycleCallbacks( new FragmentManager.FragmentLifecycleCallbacks() { @Override public void onFragmentDetached(FragmentManager fm, Fragment f) { fragmentManager.unregisterFragmentLifecycleCallbacks(this); latch.countDown(); } }, false); return latch; }
public static CountDownLatch waitForFragmentViewDestroyed(FragmentActivity activity) { final CountDownLatch latch = new CountDownLatch(1); final FragmentManager fragmentManager = activity.getSupportFragmentManager(); fragmentManager.registerFragmentLifecycleCallbacks( new FragmentManager.FragmentLifecycleCallbacks() { @Override public void onFragmentViewDestroyed(FragmentManager fm, Fragment f) { fragmentManager.unregisterFragmentLifecycleCallbacks(this); latch.countDown(); } }, false); return latch; }
@NonNull public RequestManager get(@NonNull FragmentActivity activity) { if (Util.isOnBackgroundThread()) { return get(activity.getApplicationContext()); } else { assertNotDestroyed(activity); FragmentManager fm = activity.getSupportFragmentManager(); return supportFragmentGet( activity, fm, /*parentHint=*/ null, isActivityVisible(activity)); } }
@Override public void addFragmentWithTag(String tag, RequestManager manager) { SupportRequestManagerFragment fragment = new SupportRequestManagerFragment(); fragment.setRequestManager(manager); controller.get().getSupportFragmentManager().beginTransaction() .add(fragment, RequestManagerRetriever.FRAGMENT_TAG).commitAllowingStateLoss(); controller.get().getSupportFragmentManager().executePendingTransactions(); } }
public SupportRequestManagerHarness() { supportFragment = new SupportRequestManagerFragment(lifecycle); supportController = Robolectric.buildActivity(FragmentActivity.class).create(); supportController.get() .getSupportFragmentManager() .beginTransaction() .add(supportFragment, TAG) .commit(); supportController.get().getSupportFragmentManager().executePendingTransactions(); }
public SupportRetrieverHarness() { this.parent = new Fragment(); controller.create(); controller.get().getSupportFragmentManager().beginTransaction().add(parent, PARENT_TAG) .commitAllowingStateLoss(); controller.get().getSupportFragmentManager().executePendingTransactions(); controller.start().resume(); }
@Test public void testSupportCanGetRequestManagerFromFragment() { FragmentActivity activity = Robolectric.buildActivity(FragmentActivity.class).create().start().resume().get(); Fragment fragment = new Fragment(); activity.getSupportFragmentManager().beginTransaction().add(fragment, PARENT_TAG).commit(); activity.getSupportFragmentManager().executePendingTransactions(); RequestManager manager = retriever.get(fragment); assertEquals(manager, retriever.get(fragment)); }
private void helpTestSupportCanGetRequestManagerFromDetachedFragment() { FragmentActivity activity = Robolectric.buildActivity(FragmentActivity.class).create().start().resume().get(); Fragment fragment = new Fragment(); activity.getSupportFragmentManager().beginTransaction().add(fragment, PARENT_TAG) .detach(fragment).commit(); activity.getSupportFragmentManager().executePendingTransactions(); assertTrue(fragment.isDetached()); retriever.get(fragment); }
@Before public void setUp() throws Exception { activity = Robolectric.buildActivity(FragmentActivity.class).create().start().resume().get(); fragmentManager = activity.getSupportFragmentManager(); dialogFragment = new TestDialogFragment(); }