List of usage examples for android.support.v4.app FragmentManager findFragmentById
public abstract Fragment findFragmentById(int id);
From source file:com.android.calendar.agenda.AgendaFragment.java
private void showEventInfo(EventInfo event, boolean allDay, boolean replaceFragment) { // Ignore unknown events if (event.id == -1) { Log.e(TAG, "showEventInfo, event ID = " + event.id); return;/* w w w . ja va 2 s . com*/ } mLastShownEventId = event.id; // Create a fragment to show the event to the side of the agenda list if (mShowEventDetailsWithAgenda) { FragmentManager fragmentManager = getFragmentManager(); if (fragmentManager == null) { // Got a goto event before the fragment finished attaching, // stash the event and handle it later. mOnAttachedInfo = event; mOnAttachAllDay = allDay; return; } FragmentTransaction ft = fragmentManager.beginTransaction(); if (allDay) { event.startTime.timezone = Time.TIMEZONE_UTC; event.endTime.timezone = Time.TIMEZONE_UTC; } if (DEBUG) { Log.d(TAG, "***"); Log.d(TAG, "showEventInfo: start: " + new Date(event.startTime.toMillis(true))); Log.d(TAG, "showEventInfo: end: " + new Date(event.endTime.toMillis(true))); Log.d(TAG, "showEventInfo: all day: " + allDay); Log.d(TAG, "***"); } long startMillis = event.startTime.toMillis(true); long endMillis = event.endTime.toMillis(true); EventInfoFragment fOld = (EventInfoFragment) fragmentManager.findFragmentById(R.id.agenda_event_info); if (fOld == null || replaceFragment || fOld.getStartMillis() != startMillis || fOld.getEndMillis() != endMillis || fOld.getEventId() != event.id) { mEventFragment = new EventInfoFragment(mActivity, event.id, startMillis, endMillis, Attendees.ATTENDEE_STATUS_NONE, false, EventInfoFragment.DIALOG_WINDOW_STYLE, null); ft.replace(R.id.agenda_event_info, mEventFragment); ft.commit(); } else { fOld.reloadEvents(); } } }
From source file:com.jefftharris.passwdsafe.PasswdSafe.java
@Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); PasswdSafeUtil.dbginfo(TAG, "onNewIntent: %s", intent); switch (intent.getAction()) { case PasswdSafeUtil.VIEW_INTENT: case Intent.ACTION_VIEW: { final Uri openUri = PasswdSafeApp.getOpenUriFromIntent(intent); final ObjectHolder<Boolean> reopen = new ObjectHolder<>(true); itsFileDataFrag.useFileData(new PasswdFileDataUser() { @Override//from ww w .j ava 2 s. co m public void useFileData(@NonNull PasswdFileData fileData) { reopen.set(!fileData.getUri().getUri().equals(openUri)); } }); Boolean reopenVal = reopen.get(); if ((reopenVal != null) && reopenVal) { // Close and reopen the new file itsFileDataFrag.setFileData(null); doUpdateView(ViewMode.INIT, new PasswdLocation()); changeInitialView(); changeFileOpenView(intent); } break; } case Intent.ACTION_SEARCH: { setRecordQueryFilter(intent.getStringExtra(SearchManager.QUERY)); break; } default: { FragmentManager fragMgr = getSupportFragmentManager(); Fragment frag = fragMgr.findFragmentById(R.id.content); if (frag instanceof PasswdSafeOpenFileFragment) { ((PasswdSafeOpenFileFragment) frag).onNewIntent(intent); } break; } } }
From source file:org.gateshipone.odyssey.activities.OdysseyMainActivity.java
@Override public void onBackPressed() { FragmentManager fragmentManager = getSupportFragmentManager(); DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); if (drawer != null && drawer.isDrawerOpen(GravityCompat.START)) { drawer.closeDrawer(GravityCompat.START); } else if (mNowPlayingDragStatus == DRAG_STATUS.DRAGGED_UP) { NowPlayingView nowPlayingView = (NowPlayingView) findViewById(R.id.now_playing_layout); if (nowPlayingView != null) { View coordinatorLayout = findViewById(R.id.main_coordinator_layout); coordinatorLayout.setVisibility(View.VISIBLE); nowPlayingView.minimize();/*from w w w .ja va2s .co m*/ } } else if (fragmentManager.findFragmentById(R.id.fragment_container) instanceof SettingsFragment || fragmentManager.findFragmentById(R.id.fragment_container) instanceof SavedPlaylistsFragment) { // If current fragment is the settings or savedplaylists fragment, jump back to myMusicFragment. FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.replace(R.id.fragment_container, new MyMusicFragment()); transaction.commit(); // Reset the navigation view NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); if (navigationView != null) { navigationView.setCheckedItem(R.id.nav_my_music); } } else if (fragmentManager.findFragmentById(R.id.fragment_container) instanceof FilesFragment) { // handle back pressed events for the files fragment manually FilesFragment fragment = (FilesFragment) fragmentManager.findFragmentById(R.id.fragment_container); if (fragment.isRootDirectory()) { // current directory is a root directory so handle back press normally super.onBackPressed(); } else { // no root directory so create a new fragment with the parent directory List<String> storageVolumesList = mFileExplorerHelper.getStorageVolumes(getApplicationContext()); String parentDirectoryPath = fragment.getCurrentDirectory().getParent(); onDirectorySelected(parentDirectoryPath, storageVolumesList.contains(parentDirectoryPath)); } } else { super.onBackPressed(); // enable navigation bar when backstack empty if (fragmentManager.getBackStackEntryCount() == 0) { mDrawerToggle.setDrawerIndicatorEnabled(true); } } }
From source file:com.gdgdevfest.android.apps.devfestbcn.ui.HomeActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (isFinishing()) { return;/*from w ww .j a v a2 s .co m*/ } if (android.os.Build.VERSION.SDK_INT > 9) { StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); StrictMode.setThreadPolicy(policy); } UIUtils.enableDisableActivitiesByFormFactor(this); setContentView(R.layout.activity_home); FragmentManager fm = getSupportFragmentManager(); setTitle(R.string.app_name); mViewPager = (ViewPager) findViewById(R.id.pager); String homeScreenLabel; if (mViewPager != null) { // Phone setup mViewPager.setAdapter(new HomePagerAdapter(getSupportFragmentManager())); mViewPager.setOnPageChangeListener(this); mViewPager.setPageMarginDrawable(R.drawable.grey_border_inset_lr); mViewPager.setPageMargin(getResources().getDimensionPixelSize(R.dimen.page_margin_width)); final ActionBar actionBar = getSupportActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); actionBar.addTab(actionBar.newTab().setText(R.string.title_my_schedule).setTabListener(this)); actionBar.addTab(actionBar.newTab().setText(R.string.title_explore).setTabListener(this)); actionBar.addTab(actionBar.newTab().setText(R.string.title_stream).setTabListener(this)); setHasTabs(); if (getIntent() != null && TAB_EXPLORE.equals(getIntent().getStringExtra(EXTRA_DEFAULT_TAB)) && savedInstanceState == null) { mViewPager.setCurrentItem(1); } homeScreenLabel = getString(R.string.title_my_schedule); } else { mSocialStreamFragment = (SocialStreamFragment) fm.findFragmentById(R.id.fragment_stream); homeScreenLabel = "Home"; } getSupportActionBar().setHomeButtonEnabled(false); triggerRefresh(); EasyTracker.getTracker().sendView(homeScreenLabel); LOGD("Tracker", homeScreenLabel); }
From source file:android.support.v17.leanback.app.BrowseSupportFragment.java
private void swapToMainFragment() { final VerticalGridView gridView = mHeadersSupportFragment.getVerticalGridView(); if (isShowingHeaders() && gridView != null && gridView.getScrollState() != RecyclerView.SCROLL_STATE_IDLE) { // if user is scrolling HeadersSupportFragment, swap to empty fragment and wait scrolling // finishes. getChildFragmentManager().beginTransaction().replace(R.id.scale_frame, new Fragment()).commit(); gridView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override/* w w w . ja v a2s .c om*/ public void onScrollStateChanged(RecyclerView recyclerView, int newState) { if (newState == RecyclerView.SCROLL_STATE_IDLE) { gridView.removeOnScrollListener(this); FragmentManager fm = getChildFragmentManager(); Fragment currentFragment = fm.findFragmentById(R.id.scale_frame); if (currentFragment != mMainFragment) { fm.beginTransaction().replace(R.id.scale_frame, mMainFragment).commit(); } } } }); } else { // Otherwise swap immediately getChildFragmentManager().beginTransaction().replace(R.id.scale_frame, mMainFragment).commit(); } }
From source file:com.conferenceengineer.android.iosched.ui.HomeActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (isFinishing()) { return;/*from w ww . j a v a 2 s. c om*/ } UIUtils.enableDisableActivitiesByFormFactor(this); setContentView(R.layout.activity_home); FragmentManager fm = getSupportFragmentManager(); mViewPager = (ViewPager) findViewById(R.id.pager); String homeScreenLabel; if (mViewPager != null) { // Phone setup mViewPager.setAdapter(new HomePagerAdapter(getSupportFragmentManager())); mViewPager.setOnPageChangeListener(this); mViewPager.setPageMarginDrawable(R.drawable.grey_border_inset_lr); mViewPager.setPageMargin(getResources().getDimensionPixelSize(R.dimen.page_margin_width)); final ActionBar actionBar = getSupportActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); actionBar.addTab(actionBar.newTab().setText(R.string.title_my_schedule).setTabListener(this)); actionBar.addTab(actionBar.newTab().setText(R.string.title_explore).setTabListener(this)); actionBar.addTab(actionBar.newTab().setText(R.string.title_stream).setTabListener(this)); setHasTabs(); if (getIntent() != null && TAB_EXPLORE.equals(getIntent().getStringExtra(EXTRA_DEFAULT_TAB)) && savedInstanceState == null) { mViewPager.setCurrentItem(1); } homeScreenLabel = getString(R.string.title_my_schedule); } else { mSocialStreamFragment = (SocialStreamFragment) fm.findFragmentById(R.id.fragment_stream); homeScreenLabel = "Home"; } getSupportActionBar().setHomeButtonEnabled(false); LOGD("Tracker", homeScreenLabel); mImageLoader = new ImageLoader(this, R.drawable.person_image_empty) .setMaxImageSize(getResources().getDimensionPixelSize(R.dimen.stream_image_size)) .setFadeInImage(UIUtils.hasHoneycombMR1()); // Sync data on load /* TODO : Sync data, don't register for GCM if (savedInstanceState == null) { registerGCMClient(); } */ }
From source file:com.xandy.calendar.AllInOneActivity.java
private void setMainPane(FragmentTransaction ft, int viewId, int viewType, long timeMillis, boolean force) { if (mOnSaveInstanceStateCalled) { return;//ww w. jav a2s .com } if (!force && mCurrentView == viewType) { return; } // Remove this when transition to and from month view looks fine. boolean doTransition = viewType != ViewType.MONTH && mCurrentView != ViewType.MONTH; // FragmentManager fragmentManager = getFragmentManager(); FragmentManager fragmentManager = getSupportFragmentManager(); // Check if our previous view was an Agenda view // TODO remove this if framework ever supports nested fragments if (mCurrentView == ViewType.AGENDA) { // If it was, we need to do some cleanup on it to prevent the // edit/delete buttons from coming back on a rotation. Fragment oldFrag = fragmentManager.findFragmentById(viewId); if (oldFrag instanceof AgendaFragment) { ((AgendaFragment) oldFrag).removeFragments(fragmentManager); } } if (viewType != mCurrentView) { // The rules for this previous view are different than the // controller's and are used for intercepting the back button. if (mCurrentView != ViewType.EDIT && mCurrentView > 0) { mPreviousView = mCurrentView; } mCurrentView = viewType; } // Create new fragment Fragment frag = null; Fragment secFrag = null; switch (viewType) { case ViewType.AGENDA: if (mActionBar != null && (mActionBar.getSelectedTab() != mAgendaTab)) { mActionBar.selectTab(mAgendaTab); } if (mActionBarMenuSpinnerAdapter != null) { mActionBar.setSelectedNavigationItem(CalendarViewAdapter.AGENDA_BUTTON_INDEX); } frag = new AgendaFragment(timeMillis, false); ExtensionsFactory.getAnalyticsLogger(getBaseContext()).trackView("agenda"); break; case ViewType.DAY: if (mActionBar != null && (mActionBar.getSelectedTab() != mDayTab)) { mActionBar.selectTab(mDayTab); } if (mActionBarMenuSpinnerAdapter != null) { mActionBar.setSelectedNavigationItem(CalendarViewAdapter.DAY_BUTTON_INDEX); } frag = new DayFragment(timeMillis, 1); ExtensionsFactory.getAnalyticsLogger(getBaseContext()).trackView("day"); break; case ViewType.MONTH: if (mActionBar != null && (mActionBar.getSelectedTab() != mMonthTab)) { mActionBar.selectTab(mMonthTab); } if (mActionBarMenuSpinnerAdapter != null) { mActionBar.setSelectedNavigationItem(CalendarViewAdapter.MONTH_BUTTON_INDEX); } // frag = new MonthByWeekFragment(timeMillis, false); frag = new XMonthFragment(); if (mShowAgendaWithMonth) { secFrag = new AgendaFragment(timeMillis, false); } ExtensionsFactory.getAnalyticsLogger(getBaseContext()).trackView("month"); break; case ViewType.WEEK: default: if (mActionBar != null && (mActionBar.getSelectedTab() != mWeekTab)) { mActionBar.selectTab(mWeekTab); } if (mActionBarMenuSpinnerAdapter != null) { mActionBar.setSelectedNavigationItem(CalendarViewAdapter.WEEK_BUTTON_INDEX); } frag = new DayFragment(timeMillis, 7); ExtensionsFactory.getAnalyticsLogger(getBaseContext()).trackView("week"); break; } // Update the current view so that the menu can update its look according to the // current view. if (mActionBarMenuSpinnerAdapter != null) { mActionBarMenuSpinnerAdapter.setMainView(viewType); if (!mIsTabletConfig) { mActionBarMenuSpinnerAdapter.setTime(timeMillis); } } // Show date only on tablet configurations in views different than Agenda if (!mIsTabletConfig) { mDateRange.setVisibility(View.GONE); } else if (viewType != ViewType.AGENDA) { mDateRange.setVisibility(View.VISIBLE); } else { mDateRange.setVisibility(View.GONE); } // Clear unnecessary buttons from the option menu when switching from the agenda view if (viewType != ViewType.AGENDA) { clearOptionsMenu(); } boolean doCommit = false; if (ft == null) { doCommit = true; ft = fragmentManager.beginTransaction(); } if (doTransition) { ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); } ft.replace(viewId, frag); if (mShowAgendaWithMonth) { // Show/hide secondary fragment if (secFrag != null) { ft.replace(R.id.secondary_pane, secFrag); mSecondaryPane.setVisibility(View.VISIBLE); } else { mSecondaryPane.setVisibility(View.GONE); Fragment f = fragmentManager.findFragmentById(R.id.secondary_pane); if (f != null) { ft.remove(f); } mController.deregisterEventHandler(R.id.secondary_pane); } } if (DEBUG) { Log.d(TAG, "Adding handler with viewId " + viewId + " and type " + viewType); } // If the key is already registered this will replace it mController.registerEventHandler(viewId, (EventHandler) frag); if (secFrag != null) { mController.registerEventHandler(viewId, (EventHandler) secFrag); } if (doCommit) { if (DEBUG) { Log.d(TAG, "setMainPane AllInOne=" + this + " finishing:" + this.isFinishing()); } ft.commit(); } }
From source file:com.openatk.field_work.MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); dbHelper = new DatabaseHelper(this); syncHelper = new TrelloSyncHelper(); //Get fragments FragmentManager fm = getSupportFragmentManager(); atkMapFragment = (ATKSupportMapFragment) fm.findFragmentById(R.id.map); fragmentJob = (FragmentJob) fm.findFragmentByTag("edit_job"); fragmentAddField = (FragmentAddField) fm.findFragmentByTag("add_field"); //Show and hide listview really fast. TODO is there a better way to do this //I would like this to retain if possible... fragmentListView = (FragmentListView) fm.findFragmentById(R.id.list_view); FragmentTransaction ft = fm.beginTransaction(); ft.hide(fragmentListView); //TODO check state, are we in list view state? if so don't hide ft.commit();/*from w w w. j a v a2s.c o m*/ if (savedInstanceState == null) { // First incarnation of this activity. atkMapFragment.setRetainInstance(true); fragmentListView.setRetainInstance(true); if (fragmentJob != null) fragmentJob.setRetainInstance(true); if (fragmentAddField != null) fragmentAddField.setRetainInstance(true); fragmentJob = null; fragmentAddField = null; } else { // Reincarnated activity. The obtained map is the same map instance // in the previous // activity life cycle. There is no need to reinitialize it. map = atkMapFragment.getAtkMap(); } actionBar = getActionBar(); // Specify that a dropdown list should be displayed in the action bar. // actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); // Hide the title actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayUseLogoEnabled(false); actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM, ActionBar.DISPLAY_SHOW_CUSTOM); LayoutInflater inflater = (LayoutInflater) this.getApplicationContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view = inflater.inflate(R.layout.action_bar, null); RelativeLayout item = (RelativeLayout) view.findViewById(R.id.action_bar_layout); spinnerMenu = (Spinner) view.findViewById(R.id.action_bar_operation_spinner); actionBarSearch = (EditText) view.findViewById(R.id.action_bar_search_box); actionBar.setCustomView(item, new ActionBar.LayoutParams(ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT, Gravity.CENTER_VERTICAL | Gravity.LEFT)); actionBarSearch.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus == false) { closeKeyboard(); } } }); actionBarSearch.addTextChangedListener(new TextWatcher() { @Override public void afterTextChanged(Editable s) { if (fragmentListView != null) fragmentListView.search(s.toString()); } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } }); // Get last selected items on rotate this.savedInstanceState = savedInstanceState; // Specify a SpinnerAdapter to populate the dropdown list. spinnerMenuAdapter = new ArrayAdapter<Operation>(this, R.layout.operation_list_item, operationsList); spinnerMenu.setAdapter(spinnerMenuAdapter); RelativeLayoutKeyboardDetect layout = (RelativeLayoutKeyboardDetect) this.findViewById(R.id.mainActivity); layout.setListener(this); setUpMapIfNeeded(); if (this.savedInstanceState != null) { int viewState = savedInstanceState.getInt("currentViewState", STATE_DEFAULT); setState(viewState); } }
From source file:com.openatk.field_work.MainActivity.java
private void setState(int newState, boolean transition) { Log.d("SetState!!", "Setting state:" + Integer.toString(newState)); if (mCurrentState == newState) { return;/*w w w . j a v a 2 s.com*/ } // Exit current state if (mCurrentState == STATE_DEFAULT) { } else if (mCurrentState == STATE_LIST_VIEW) { FragmentManager fm = getSupportFragmentManager(); // Hide list actionBarSearch.setVisibility(View.GONE); Fragment fragment = fm.findFragmentById(R.id.list_view); FragmentTransaction ft = fm.beginTransaction(); ft.hide(fragment); ft.commit(); fragmentListView = null; } // Enter new state if (newState == STATE_DEFAULT) { } else if (newState == STATE_LIST_VIEW) { FragmentManager fm = getSupportFragmentManager(); // Show List actionBarSearch.setVisibility(View.VISIBLE); FragmentListView fragmentListView = (FragmentListView) fm.findFragmentById(R.id.list_view); fragmentListView.getData(); FragmentTransaction ft = fm.beginTransaction(); ft.show(fragmentListView); ft.commit(); this.fragmentListView = fragmentListView; } // Officially in new state mCurrentState = newState; invalidateOptionsMenu(); }
From source file:cn.edu.zafu.corepage.core.CorePageManager.java
/** * ?/*from w ww. j a v a 2 s . c om*/ * fragemnt * * @param fragmentManager FragmentManager? * @param pageName ??? * @param bundle ? * @param animations * @param addToBackStack ? * @return Fragment */ public Fragment openPageWithNewFragmentManager(FragmentManager fragmentManager, String pageName, Bundle bundle, int[] animations, boolean addToBackStack) { BaseFragment fragment = null; try { CorePage corePage = this.mPageMap.get(pageName); if (corePage == null) { Log.d(TAG, "Page:" + pageName + " is null"); return null; } /** * Atlas? start */ if (CoreConfig.isOpenAtlas()) { ClassLoader bundleClassLoader = CoreConfig.getBundleClassLoader(); if (bundleClassLoader == null) { Log.d(TAG, "OpenAtlas bundle ClassLoader is null!"); return null; } fragment = (BaseFragment) CoreConfig.getBundleClassLoader().loadClass(corePage.getClazz()) .newInstance(); } else { fragment = (BaseFragment) Class.forName(corePage.getClazz()).newInstance(); } /** * Atlas? end */ Bundle pageBundle = buildBundle(corePage); if (bundle != null) { pageBundle.putAll(bundle); } fragment.setArguments(pageBundle); fragment.setPageName(pageName); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); if (animations != null && animations.length >= 4) { fragmentTransaction.setCustomAnimations(animations[0], animations[1], animations[2], animations[3]); } Fragment fragmentContainer = fragmentManager.findFragmentById(R.id.fragment_container); if (fragmentContainer != null) { fragmentTransaction.hide(fragmentContainer); } fragmentTransaction.add(R.id.fragment_container, fragment, pageName); if (addToBackStack) { fragmentTransaction.addToBackStack(pageName); } fragmentTransaction.commitAllowingStateLoss(); //fragmentTransaction.commit(); } catch (Exception e) { e.printStackTrace(); Log.d(TAG, "Fragment.error:" + e.getMessage()); return null; } return fragment; }