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

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

Introduction

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

Prototype

public abstract Fragment findFragmentByTag(String tag);

Source Link

Document

Finds a fragment that was identified by the given tag either when inflated from XML or as supplied when added in a transaction.

Usage

From source file:com.gdgdevfest.android.apps.devfestbcn.ui.tablet.MapMultiPaneActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_map);

    FragmentManager fm = getSupportFragmentManager();
    fm.addOnBackStackChangedListener(this);

    mFragmentBreadCrumbs = (FragmentBreadCrumbs) findViewById(R.id.breadcrumbs);
    mFragmentBreadCrumbs.setActivity(this);

    mMapFragment = (MapFragment) fm.findFragmentByTag("map");
    if (mMapFragment == null) {
        mMapFragment = new MapFragment();
        mMapFragment.setArguments(intentToFragmentArguments(getIntent()));

        fm.beginTransaction().add(R.id.fragment_container_map, mMapFragment, "map").commit();
    }/*from   w  w  w. j  av a2s.  c om*/

    findViewById(R.id.close_button).setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {
            clearBackStack(false);
        }
    });

    updateBreadCrumbs();
    onConfigurationChanged(getResources().getConfiguration());
}

From source file:com.money.manager.ex.settings.BaseSettingsFragmentActivity.java

protected void setSettingFragment(PreferenceFragmentCompat fragment) {
    // use the class name as the fragment tag.
    String tag = fragment.getClass().getSimpleName();

    FragmentManager manager = getSupportFragmentManager();

    FragmentTransaction tx = manager.beginTransaction();
    tx.replace(R.id.content, fragment, tag);

    // Add to backstack only if this is not the first fragment, and the fragment is not already added.
    List<Fragment> fragments = manager.getFragments();
    boolean isFirstFragment = fragments == null || fragments.size() == 0;

    Fragment existing = manager.findFragmentByTag(tag);
    boolean isAdded = existing != null;

    if (!isFirstFragment && !isAdded) {
        tx.addToBackStack(null);//from  w  w  w  .j  av a2s.  c  o m
    }

    tx.commit();
}

From source file:butter.droid.activities.MainActivity.java

@Override
public void onNavigationDrawerItemSelected(NavigationDrawerFragment.NavDrawerItem item, String title) {
    setTitle(null != title ? title : getString(R.string.app_name));
    // update the main content by replacing fragments
    FragmentManager fragmentManager = getSupportFragmentManager();

    String tag = title + "_tag";
    // Fragment fragment = mFragmentCache.get(position);
    mCurrentFragment = fragmentManager.findFragmentByTag(tag);
    if (null == mCurrentFragment && item.hasProvider()) {
        mCurrentFragment = MediaContainerFragment.newInstance(item.getMediaProvider());
    }/*w w  w  . jav  a2  s .c  o  m*/

    if (mTabs.getTabCount() > 0)
        mTabs.getTabAt(0).select();

    fragmentManager.beginTransaction().replace(R.id.container, mCurrentFragment, tag).commit();

    if (mCurrentFragment instanceof MediaContainerFragment) {
        updateTabs((MediaContainerFragment) mCurrentFragment,
                ((MediaContainerFragment) mCurrentFragment).getCurrentSelection());
    }
}

From source file:com.google.sample.castcompanionlibrary.cast.player.VideoCastControllerActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.cast_activity);
    loadAndSetupViews();/* www. ja  v  a  2s.c o  m*/
    mVolumeIncrement = Utils.getFloatFromPreference(this, VideoCastManager.PREFS_KEY_VOLUME_INCREMENT);
    if (mVolumeIncrement == Float.MIN_VALUE) {
        mVolumeIncrement = DEFAULT_VOLUME_INCREMENT;
    }
    try {
        mCastManager = VideoCastManager.getInstance();
    } catch (CastException e) {
        // logged already
        finish();
    }

    setupActionBar();
    Bundle extras = getIntent().getExtras();
    if (null == extras) {
        finish();
        return;
    }

    FragmentManager fm = getSupportFragmentManager();
    mVideoCastControllerFragment = (VideoCastControllerFragment) fm.findFragmentByTag("task");

    // if fragment is null, it means this is the first time, so create it
    if (mVideoCastControllerFragment == null) {
        mVideoCastControllerFragment = VideoCastControllerFragment.newInstance(extras);
        fm.beginTransaction().add(mVideoCastControllerFragment, "task").commit();
        mListener = mVideoCastControllerFragment;
        setOnVideoCastControllerChangedListener(mListener);
    } else {
        mListener = mVideoCastControllerFragment;
        mListener.onConfigurationChanged();
    }
}

From source file:com.andrada.sitracker.ui.HomeActivity.java

@OptionsItem(R.id.action_about)
void menuAboutSelected() {
    AnalyticsHelper.getInstance().sendView(Constants.GA_SCREEN_ABOUT_DIALOG);
    FragmentManager fm = this.getSupportFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();
    Fragment prev = fm.findFragmentByTag(AboutDialog.FRAGMENT_TAG);
    if (prev != null) {
        ft.remove(prev);/* w  ww  .ja v a  2 s . c o m*/
    }
    ft.addToBackStack(null);
    new AboutDialog().show(ft, AboutDialog.FRAGMENT_TAG);
}

From source file:cn.edu.zafu.corepage.core.CorePageManager.java

/**
 * ?//from w  ww . jav a 2  s  .  c o  m
 * Fragement,?
 *
 * @param fragmentManager FragmentManager?
 * @param pageName ???
 * @param bundle ?
 * @param animations 
 * @return ?fragment
 */
public Fragment gotoPage(FragmentManager fragmentManager, String pageName, Bundle bundle, int[] animations) {
    Log.d(TAG, "gotoPage:" + pageName);
    Fragment fragment = null;
    if (fragmentManager != null) {
        fragment = fragmentManager.findFragmentByTag(pageName);
    }
    if (fragment != null) {
        fragmentManager.popBackStackImmediate(pageName, 0);
    } else {
        fragment = this.openPageWithNewFragmentManager(fragmentManager, pageName, bundle, animations, true);
    }
    return fragment;

}

From source file:com.akop.bach.activity.RibbonedMultiPane.java

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

    requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
    setContentView(getLayout());//from  ww w . ja v a 2  s. co m

    if ((mAccount = (BasicAccount) getIntent().getParcelableExtra("account")) == null && !allowNullAccounts()) {
        if (App.getConfig().logToConsole())
            App.logv("Account is null");

        finish();
        return;
    }

    if (android.os.Build.VERSION.SDK_INT >= 11) {
        new ActionBarHelper().init();
    }

    // this part was under each activity

    if (!initializeParameters()) {
        finish();
        return;
    }

    FragmentManager fm = getSupportFragmentManager();
    Fragment titleFrag;

    FragmentTransaction ft = fm.beginTransaction();
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);

    if ((titleFrag = fm.findFragmentByTag("title")) == null) {
        titleFrag = instantiateTitleFragment();
        ft.replace(R.id.fragment_titles, titleFrag, "title");
    }

    if (isDualPane()) {
        if ((mDetailFragment = fm.findFragmentByTag("details")) == null) {
            if ((mDetailFragment = instantiateDetailFragment()) != null)
                ft.replace(R.id.fragment_details, mDetailFragment, "details");
        } else if (mDetailFragment.isDetached()) {
            ft.attach(mDetailFragment);
        }
    } else {
        Fragment detailFragment;
        if ((detailFragment = fm.findFragmentByTag("details")) != null) {
            ft.detach(detailFragment);
        }
    }

    ft.commit();
}

From source file:com.autoparts.buyers.activity.InquiryModelActivity.java

public void updateContent(int state) {
    ModelFragment fragment = null;/*  w ww .j  a v  a 2s. co m*/
    String tag = "";
    final FragmentManager fm = getSupportFragmentManager();
    final FragmentTransaction tr = fm.beginTransaction();

    if (currentState != state) {
        final Fragment currentFragment = fm.findFragmentByTag(currentContentFragmentTag);
        if (currentFragment != null)
            tr.hide(currentFragment);
    }
    //        if (AboutFragment.ABOUT_URI.equals(uri)) {
    tag = ModelFragment.TAG;
    final ModelFragment foundFragment = (ModelFragment) fm.findFragmentByTag(tag);
    if (foundFragment != null) {
        fragment = foundFragment;
    } else {
        fragment = new ModelFragment(handlerSelected);
    }
    //        }

    if (fragment.isAdded()) {
        tr.show(fragment);
    } else {
        tr.replace(R.id.content, fragment, tag);
    }
    tr.commit();
    if (mList != null && state < mList.size()) {
        fragment.model_data(mList.get(state).getUser_id());
    }

    currentState = state;
    currentContentFragmentTag = tag;
}

From source file:com.nextgis.woody.activity.EditActivity.java

private void saveCoordinates() {
    FragmentManager fm = getSupportFragmentManager();
    MapFragment mapFragment = (MapFragment) fm.findFragmentByTag(Constants.FRAGMENT_MAP);
    GeoPoint pt = mapFragment.getSelectedPosition();
    try {//from  w w  w.ja va 2  s. c om
        values.put(FIELD_GEOM, pt.toBlob());
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:com.linangran.tgfcapp.activities.MainActivity.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    NetworkUtils.init(getApplicationContext());
    PreferenceUtils.setContext(getApplicationContext());
    setContentView(R.layout.activity_main);
    this.drawerLayout = (DrawerLayout) findViewById(R.id.main_drawer);
    Toolbar toolbar = (Toolbar) findViewById(R.id.main_toolbar);
    setSupportActionBar(toolbar);// ww  w.  ja va  2 s .c  o m
    this.drawerToggle = new ActionBarDrawerToggle(this, this.drawerLayout, toolbar, R.string.app_name,
            R.string.app_name) {
        @Override
        public void onDrawerClosed(View drawerView) {
            invalidateOptionsMenu();
        }

        @Override
        public void onDrawerOpened(View drawerView) {
            invalidateOptionsMenu();
        }
    };
    this.drawerLayout.setDrawerListener(this.drawerToggle);
    this.drawerLayout.post(new Runnable() {
        @Override
        public void run() {
            MainActivity.this.drawerToggle.syncState();
        }
    });
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    DrawerLayout drawerLayout = (DrawerLayout) findViewById(R.id.main_drawer);
    drawerLayout.setStatusBarBackground(R.color.tgred);
    this.usernameTextView = (TextView) findViewById(R.id.main_drawer_username_textview);
    this.loginButton = (ImageButton) findViewById(R.id.main_drawer_login_button);
    View.OnClickListener loginPanelListener = new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if (PreferenceUtils.isLogin()) {
                DialogInterface.OnClickListener logoutListner = new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        switch (i) {
                        case DialogInterface.BUTTON_POSITIVE:
                            Intent intent = new Intent(MainActivity.this, LoginActivity.class);
                            intent.putExtra("isLogout", true);
                            startActivity(intent);
                            break;
                        case DialogInterface.BUTTON_NEGATIVE:
                            break;
                        }
                    }
                };
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this)
                        .setMessage("?").setPositiveButton("", logoutListner)
                        .setNegativeButton("?", logoutListner);
                builder.show();
            } else {
                Intent intent = new Intent(MainActivity.this, LoginActivity.class);
                startActivity(intent);
            }
        }
    };
    this.loginButton.setOnClickListener(loginPanelListener);
    this.usernameTextView.setOnClickListener(loginPanelListener);
    this.drawerContentLayout = (LinearLayout) findViewById(R.id.main_drawer_content_layout);
    this.drawerContentLayout.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            return true;
        }
    });
    if (PreferenceUtils.useVirtualKeyOptimization()) {
        int navigationHeight = (int) (48 * getResources().getDisplayMetrics().density + 0.5f);
        this.drawerContentLayout.setPadding(this.drawerContentLayout.getPaddingLeft(),
                this.drawerContentLayout.getPaddingTop(), this.drawerContentLayout.getPaddingRight(),
                navigationHeight);
    }
    this.pinnedList = (LinearLayout) findViewById(R.id.main_drawer_pinlist);
    this.allList = (LinearLayout) findViewById(R.id.main_drawer_alllist);
    inflateForumList(ForumBasicDataList.getForumBasicDataList(), this.allList);
    inflateForumList(ForumBasicDataList.getPinnedForumDataList(), this.pinnedList);

    this.settingTextView = (TextView) findViewById(R.id.activity_main_settings);
    this.settingTextView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this, SettingActivity.class);
            startActivity(intent);
        }
    });

    Bundle bundle = new Bundle();
    //bundle.putSerializable("forumBasicData", ForumBasicDataList.getDefaultForum());
    FragmentManager fragmentManager = getSupportFragmentManager();
    this.forumListFragment = (ForumListFragment) fragmentManager.findFragmentByTag(ForumListFragment.TAG);
    if (this.forumListFragment == null) {
        this.forumListFragment = new ForumListFragment();
        this.forumListFragment.setArguments(bundle);
        FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
        fragmentTransaction.add(R.id.activity_main, this.forumListFragment, ForumListFragment.TAG);
        fragmentTransaction.commit();
    }

    this.handler = new Handler();

    if (GooglePlayServicesUtil.isGooglePlayServicesAvailable(this) != ConnectionResult.SUCCESS) {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Google Play???").setMessage(
                "?Google Play???Google Play???TGFC Beta?????Google Play?")
                .setCancelable(false);
        builder.setPositiveButton(R.string.text_exit, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                MainActivity.this.finish();
            }
        });
        builder.show();
    } else {
        //Ugly wrapper for buggy google service library.
        if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.KITKAT) {
            registerOnGoogle();
        }
    }
}