Example usage for android.support.v4.app FragmentManager executePendingTransactions

List of usage examples for android.support.v4.app FragmentManager executePendingTransactions

Introduction

In this page you can find the example usage for android.support.v4.app FragmentManager executePendingTransactions.

Prototype

public abstract boolean executePendingTransactions();

Source Link

Document

After a FragmentTransaction is committed with FragmentTransaction#commit FragmentTransaction.commit() , it is scheduled to be executed asynchronously on the process's main thread.

Usage

From source file:com.nijie.samples.facebookfoo.FacebookFooMainActivity.java

private void showPickerFragment(PickerFragment<?> fragment) {
    fragment.setOnErrorListener(new PickerFragment.OnErrorListener() {
        @Override/*from   ww w  . jav  a  2s  .c  o m*/
        public void onError(PickerFragment<?> pickerFragment, FacebookException error) {
            String text = getString(R.string.exception, error.getMessage());
            Toast toast = Toast.makeText(FacebookFooMainActivity.this, text, Toast.LENGTH_SHORT);
            toast.show();
        }
    });

    FragmentManager fm = getSupportFragmentManager();
    fm.beginTransaction().replace(R.id.fragment_container, fragment).addToBackStack(null).commit();

    controlsContainer.setVisibility(View.GONE);

    // We want the fragment fully created so we can use it immediately.
    fm.executePendingTransactions();

    fragment.loadData(true);
}

From source file:li.barter.activities.AbstractBarterLiActivity.java

/**
 * Helper method to load fragments into layout
 *
 * @param containerResId The container resource Id in the content view into which to load the
 *                       fragment//from   w ww . j ava2s  . c om
 * @param fragment       The fragment to load
 * @param tag            The fragment tag
 * @param addToBackStack Whether the transaction should be addded to the backstack
 * @param backStackTag   The tag used for the backstack tag
 * @param customAnimate  Whether to provide a custom animation for the Fragment. If
 *                       <code>true</code>, the Fragment also needs to be annotated with a
 *                       {@linkplain li.barter.fragments.FragmentTransition} annotation which
 *                       describes the transition to perform. If <code>false</code>, will use
 *                       default fragment transition
 * @param remove         Whether the fragment should be removed before adding it
 */
public void loadFragment(final int containerResId, final AbstractBarterLiFragment fragment, final String tag,
        final boolean addToBackStack, final String backStackTag, final boolean customAnimate,
        final boolean remove) {

    final FragmentManager fragmentManager = getSupportFragmentManager();

    if (remove) {
        fragmentManager.popBackStackImmediate(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
        fragmentManager.beginTransaction().remove(fragment).commit();
        fragmentManager.executePendingTransactions();
    }
    final FragmentTransaction transaction = fragmentManager.beginTransaction();

    if (customAnimate) {
        final FragmentTransition fragmentTransition = fragment.getClass()
                .getAnnotation(FragmentTransition.class);
        if (fragmentTransition != null) {

            transaction.setCustomAnimations(fragmentTransition.enterAnimation(),
                    fragmentTransition.exitAnimation(), fragmentTransition.popEnterAnimation(),
                    fragmentTransition.popExitAnimation());

        }
    }

    transaction.replace(containerResId, fragment, tag);

    if (addToBackStack) {
        transaction.addToBackStack(backStackTag);
    }
    transaction.commit();
}

From source file:bf.io.openshop.ux.MainActivity.java

/**
 * Add first fragment to the activity. This fragment will be attached to the bottom of the fragments stack.
 * When fragment stack is cleared {@link #clearBackStack}, this fragment will be shown.
 *//*from  www.  ja v a  2  s.  com*/
private void addInitialFragment() {
    Fragment fragment = new BannersFragment();
    FragmentManager frgManager = getSupportFragmentManager();
    FragmentTransaction fragmentTransaction = frgManager.beginTransaction();
    fragmentTransaction.add(R.id.main_content_frame, fragment).commit();
    frgManager.executePendingTransactions();
}

From source file:com.erevacation.challenge.ui.base.navigator.BaseNavigator.java

private void replaceFragmentInternalWithSharedElement(FragmentManager fm, @IdRes int containerId,
        Fragment fragment, String fragmentTag, Bundle args, boolean addToBackStack, String backStackTag,
        View sharedElement, String transitionName) {

    if (args != null) {
        fragment.setArguments(args);// w w  w . j  a va 2 s.  c  om
    }

    if (addToBackStack) {
        Fragment replacedFragment = fm.findFragmentById(containerId);
        if (replacedFragment != null) {
            fm.saveFragmentInstanceState(replacedFragment);
        }

        mFragmentBackStackAnimations.apply(fm.beginTransaction())
                .addSharedElement(sharedElement, transitionName).add(containerId, fragment, fragmentTag)
                .addToBackStack(backStackTag).commit();
        fm.executePendingTransactions();
    } else {
        mFragmentAnimations.apply(fm.beginTransaction()).replace(containerId, fragment, fragmentTag)
                .commitNow();
    }
}

From source file:com.erevacation.reactiveanimations.ui.base.navigator.BaseNavigator.java

private void replaceFragmentInternalWithSharedElement(FragmentManager fm, @IdRes int containerId,
        Fragment fragment, String fragmentTag, Bundle args, boolean addToBackStack, String backStackTag,
        View sharedElement, String transitionName) {

    if (args != null) {
        fragment.setArguments(args);//from www  . ja v a 2s. c om
    }

    if (addToBackStack) {
        Fragment replacedFragment = fm.findFragmentById(containerId);
        if (replacedFragment != null) {
            fm.saveFragmentInstanceState(replacedFragment);
        }

        mFragmentBackStackAnimations.apply(fm.beginTransaction())
                .addSharedElement(sharedElement, transitionName).replace(containerId, fragment, fragmentTag)
                .addToBackStack(backStackTag).commit();
        fm.executePendingTransactions();
    } else {
        mFragmentAnimations.apply(fm.beginTransaction()).replace(containerId, fragment, fragmentTag)
                .commitNow();
    }
}

From source file:at.fhooe.mcm.saap.facebook.HelloFacebookSampleActivity.java

private void showPickerFragment(PickerFragment<?> fragment) {
    fragment.setOnErrorListener(new PickerFragment.OnErrorListener() {
        @Override//ww  w.  j ava  2  s  .com
        public void onError(PickerFragment<?> pickerFragment, FacebookException error) {
            String text = getString(R.string.exception, error.getMessage());
            Toast toast = Toast.makeText(HelloFacebookSampleActivity.this, text, Toast.LENGTH_SHORT);
            toast.show();
        }
    });

    FragmentManager fm = getSupportFragmentManager();
    fm.beginTransaction().replace(R.id.fragment_container, fragment).addToBackStack(null).commit();

    controlsContainer.setVisibility(View.GONE);

    // We want the fragment fully created so we can use it immediately.
    fm.executePendingTransactions();

    fragment.loadData(true);
}

From source file:com.kncwallet.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);
    actionBar.setIcon(R.drawable.ic_knclogo);
    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else/*from w  ww  .  j  a  v  a2s  .  co  m*/
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:com.mybitcoin.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    //      final ActionBar actionBar = getSupportActionBar();
    //      actionBar.setDisplayHomeAsUpEnabled(true);

    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else/*from www .  jav  a2  s. c  om*/
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:com.bushstar.htmlcoin_android_wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else// w w w  .  j  a  v a2s.c  o m
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:cc.mintcoin.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    FragmentTransaction remove = fragmentManager.beginTransaction();
    if (walletAddressesFragment == null) {
        walletAddressesFragment = new WalletAddressesFragment();
    } else {/*  w ww.  j a  va  2s .  c o  m*/
        remove.remove(walletAddressesFragment);
    }
    if (sendingAddressesFragment == null) {
        sendingAddressesFragment = new SendingAddressesFragment();
    } else {
        remove.remove(sendingAddressesFragment);
    }
    if (!remove.isEmpty()) {
        remove.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}