androidx.fragment.app.FragmentTransaction#replace ( )源码实例Demo

下面列出了androidx.fragment.app.FragmentTransaction#replace ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Applozic-Android-SDK   文件: MainActivity.java
public static void addFragment(FragmentActivity fragmentActivity, Fragment fragmentToAdd, String fragmentTag) {

        FragmentManager supportFragmentManager = fragmentActivity.getSupportFragmentManager();

        //Fragment activeFragment = UIService.getActiveFragment(fragmentActivity);
        FragmentTransaction fragmentTransaction = supportFragmentManager
                .beginTransaction();
        /*if (null != activeFragment) {
            fragmentTransaction.hide(activeFragment);
        }*/

        fragmentTransaction.replace(R.id.container, fragmentToAdd,
                fragmentTag);

        if (supportFragmentManager.getBackStackEntryCount() > 1) {
            supportFragmentManager.popBackStack();
        }
        fragmentTransaction.addToBackStack(fragmentTag);
        fragmentTransaction.commit();
        supportFragmentManager.executePendingTransactions();
        //Log.i(TAG, "BackStackEntryCount: " + supportFragmentManager.getBackStackEntryCount());
    }
 
源代码2 项目: arcusandroid   文件: FragmentController.java
public void navigateToFragment(Fragment fragment, String tag, boolean addToBackStack, TransitionEffect animation, int containerResId) {

        FragmentTransaction transaction = fragmentManager.beginTransaction();

        if (animation != null && animation.isAnimation()) {
            transaction.setCustomAnimations(animation.enter, animation.exit, animation.popEnter, animation.popExit);
        }

        if (animation != null && animation.isTransition()) {
            transaction.setTransition(animation.transitionId);
        }

        transaction.replace(containerResId, fragment, fragment.getClass().getName());
        if (addToBackStack)
            transaction.addToBackStack(tag);

        try {
            transaction.commitAllowingStateLoss();
        } catch (Exception e) {
            logger.error("An error occurred while navigating to fragment.", e);
        }
    }
 
源代码3 项目: InviZible   文件: SettingsParser.java
private void readRules(String path, List<String> lines) {
    ArrayList<String> rules_file = new ArrayList<>();
    if (lines != null) {
        rules_file.addAll(lines);
    } else {
        rules_file.add("");
    }
    FragmentTransaction fTrans = settingsActivity.getSupportFragmentManager().beginTransaction();
    Bundle bundle = new Bundle();
    bundle.putStringArrayList("rules_file", rules_file);
    bundle.putString("path", path);
    ShowRulesRecycleFrag frag = new ShowRulesRecycleFrag();
    frag.setArguments(bundle);
    fTrans.replace(android.R.id.content, frag);
    fTrans.commit();
}
 
源代码4 项目: GSYVideoPlayer   文件: FragmentVideoActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    // 设置一个exit transition
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
        getWindow().setEnterTransition(new Explode());
        getWindow().setExitTransition(new Explode());
    }
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fragment);

    newFragment = new VideoFragment();
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.replace(R.id.frameLayout, newFragment);
    transaction.addToBackStack(null);
    transaction.commit();
}
 
源代码5 项目: InviZible   文件: PreferencesTorFragment.java
private void openCountrySelectFragment(int nodesType, String keyStr) {
    if (!isAdded()) {
        return;
    }

    FragmentTransaction fTrans = getParentFragmentManager().beginTransaction();
    fTrans.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
    Fragment frg = new CountrySelectFragment();
    Bundle bndl = new Bundle();
    bndl.putInt("nodes_type", nodesType);
    bndl.putString("countries", val_tor.get(key_tor.indexOf(keyStr)));
    frg.setArguments(bndl);
    fTrans.replace(android.R.id.content, frg, "CountrySelectFragment");
    fTrans.addToBackStack("CountrySelectFragmentTag");
    fTrans.commit();
}
 
源代码6 项目: mimi-reader   文件: SlidingPanelActivity.java
@Subscribe
public void openHistoryPage(OpenHistoryEvent event) {
    final FragmentManager fm = getSupportFragmentManager();
    final FragmentTransaction ft = fm.beginTransaction();

    final boolean saveBackStack;
    if (listFragment == boardsFragment) {
        saveBackStack = true;
    } else {
        saveBackStack = false;
    }

    HistoryFragment fragment = HistoryFragment.newInstance(event.watched);
    ft.replace(R.id.postitem_list, fragment, TAG_POST_LIST);

    if (saveBackStack) {
        ft.addToBackStack(null);
    }

    ft.commit();

    listFragment = fragment;
    panelLayout.openPane();
}
 
源代码7 项目: odyssey   文件: OdysseyMainActivity.java
@Override
public void onPlaylistSelected(String playlistTitle, long playlistID) {
    // Create fragment and give it an argument for the selected playlist
    PlaylistTracksFragment newFragment = PlaylistTracksFragment.newInstance(playlistTitle, playlistID);

    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

    // set enter / exit animation
    final int layoutDirection = getResources().getConfiguration().getLayoutDirection();
    newFragment.setEnterTransition(new Slide(GravityCompat.getAbsoluteGravity(GravityCompat.START, layoutDirection)));
    newFragment.setExitTransition(new Slide(GravityCompat.getAbsoluteGravity(GravityCompat.END, layoutDirection)));

    // Replace whatever is in the fragment_container view with this
    // fragment,
    // and add the transaction to the back stack so the user can navigate
    // back
    transaction.replace(R.id.fragment_container, newFragment);
    transaction.addToBackStack("PlaylistTracksFragment");

    // Commit the transaction
    transaction.commit();
}
 
源代码8 项目: AndroidMaterialDialog   文件: MainActivity.java
@Override
protected final void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (getSupportFragmentManager().findFragmentByTag(FRAGMENT_TAG) == null) {
        fragment = (PreferenceFragment) Fragment
                .instantiate(this, PreferenceFragment.class.getName());
        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
        transaction.replace(R.id.fragment, fragment, FRAGMENT_TAG);
        transaction.commit();
    }

    initializeFloatingActionButton();
}
 
源代码9 项目: DeviceConnect-Android   文件: HueFragment01.java
/**
 * 指定されたアクセスポイントを指定して、次のフラグメントを開く.
 * @param accessPoint アクセスポイント
 */
private void moveNextFragment(final PHAccessPoint accessPoint) {
    FragmentManager manager = getFragmentManager();
    FragmentTransaction transaction = manager.beginTransaction();
    transaction.setCustomAnimations(R.anim.fragment_slide_right_enter, R.anim.fragment_slide_left_exit,
            R.anim.fragment_slide_left_enter, R.anim.fragment_slide_right_exit);
    transaction.replace(R.id.fragment_frame, HueFragment02.newInstance(accessPoint));
    transaction.commit();
}
 
/**
 * Fragment の遷移.
 * @param f Fragment
 */
private void moveFragment(final Fragment f) {
    FragmentTransaction t = getSupportFragmentManager().beginTransaction();
    t.setTransition(FragmentTransaction.TRANSIT_NONE);
    t.replace(android.R.id.content, f);
    t.addToBackStack(null);
    t.commit();

}
 
源代码11 项目: mimi-reader   文件: SlidingPanelActivity.java
@Override
    public void onBoardItemClick(ChanBoard board, boolean saveBackStack) {
        final Bundle arguments = new Bundle();
        arguments.putString(Extras.EXTRAS_BOARD_NAME, board.getName());
        arguments.putString(Extras.EXTRAS_BOARD_TITLE, board.getTitle());
        arguments.putBoolean(Extras.EXTRAS_OPTIONS_MENU_ENABLED, false);

        PostItemsListFragment fragment = new PostItemsListFragment();
        fragment.setArguments(arguments);

        final FragmentManager fm = getSupportFragmentManager();
        final FragmentTransaction ft = fm.beginTransaction();
        final Fragment catalogItemsFragment = fm.findFragmentByTag(TAG_POST_LIST);
        if (catalogItemsFragment != null) {
            ft.remove(catalogItemsFragment);
        }

        ft.replace(R.id.postitem_list, fragment, TAG_POST_LIST);

//        if (listFragment != null) {
//
//            ft.hide(listFragment);
//        }
//        ft.add(R.id.postitem_list, fragment, TAG_POST_LIST);

        if (saveBackStack) {
            ft.addToBackStack(null);
        }

        ft.commit();

        listFragment = fragment;
        setFabVisibility(fragment.showFab());
    }
 
源代码12 项目: DeviceConnect-Android   文件: AccessLogActivity.java
/**
 * フラグメントを追加します.
 *
 * @param fragment 追加するフラグメント
 * @param isBackStack バックスタックに追加する場合はtrue、それ以外はfalse
 */
private void addFragment(Fragment fragment, boolean isBackStack) {
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.replace(android.R.id.content, fragment, "container");
    if (isBackStack) {
        transaction.addToBackStack(null);
    }
    transaction.commit();
}
 
源代码13 项目: ETSMobile-Android2   文件: BottinDetailsFragment.java
private void showFragment(final Fragment fragment) {
		if (fragment == null)
			return;
// Begin the transaction
		FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
// Replace the contents of the container with the new fragment
		ft.replace(R.id.container, fragment);
// or ft.add(R.id.your_placeholder, new FooFragment());
// Complete the changes added above
		ft.commit();
	}
 
源代码14 项目: graphics-samples   文件: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (savedInstanceState == null) {
        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
        DrawableTintingFragment fragment = new DrawableTintingFragment();
        transaction.replace(R.id.sample_content_fragment, fragment);
        transaction.commit();
    }
}
 
源代码15 项目: EFRConnect-android   文件: KeyFobsActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_key_fobs);

    ButterKnife.inject(this, this);

    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    keyFobActivityFragment = new KeyFobsActivityFragment();
    FragmentManager fragmentManager = getSupportFragmentManager();
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
    fragmentTransaction.replace(R.id.fragment_container, keyFobActivityFragment);
    fragmentTransaction.commit();
    keyfobMode = MODE_SHOWING_KEYFOBS_LIST;

    keyFobBlinkingFragment = new KeyFobsActivityFindingDeviceFragment();

    // handle bluetooth adapter on/off state
    IntentFilter filter = new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED);
    registerReceiver(bluetoothAdapterStateChangeListener, filter);
    bluetoothEnableBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            changeEnableBluetoothAdapterToConnecing();
            BluetoothAdapter.getDefaultAdapter().enable();
        }
    });

}
 
源代码16 项目: AndroidAPS   文件: TreatmentsFragment.java
private void setFragment(Fragment selectedFragment) {
    FragmentTransaction ft = getChildFragmentManager().beginTransaction();
    ft.replace(R.id.treatments_fragment_container, selectedFragment); // f2_container is your FrameLayout container
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
    ft.addToBackStack(null);
    ft.commit();
}
 
private void showServiceRemover() {
    FragmentManager mgr = getSupportFragmentManager();
    FragmentTransaction transaction = mgr.beginTransaction();
    Fragment fragment = new RemoverFragment();
    transaction.replace(R.id.fragment_container, fragment);
    transaction.commit();
}
 
源代码18 项目: guanggoo-android   文件: MainActivity.java
public static void addFragmentToStack(FragmentManager fm, Fragment fragment) {
    FragmentTransaction ft = fm.beginTransaction();
    ft.replace(R.id.fragment_container, fragment);
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
    ft.addToBackStack(sStackName);
    ft.commit();
}
 
源代码19 项目: deltachat-android   文件: LogViewActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  dynamicTheme.onCreate(this);
  dynamicLanguage.onCreate(this);

  setContentView(R.layout.log_view_activity);
  logViewFragment = LogViewFragment.newInstance();
  FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
  transaction.replace(R.id.fragment_container, logViewFragment);
  transaction.commit();

  getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
 
源代码20 项目: ui   文件: MainActivity.java
@Override
public void onFragmentInteraction1(String Data) {

    //now change to the SecondFragment, pressing the back button should go to main fragment.
    FragmentTransaction transaction = fragmentManager.beginTransaction();
    //remove firstfragment from the stack and replace it with two.
    transaction.replace(R.id.container, SecondFragment.newInstance(String.valueOf(num_two), Data));
    // and add the transaction to the back stack so the user can navigate back
    transaction.addToBackStack(null);

    // Commit the transaction
    transaction.commit();

    num_two++;
}