android.support.v4.app
Class FragmentTransaction

java.lang.Object
  extended by android.support.v4.app.FragmentTransaction

public abstract class FragmentTransaction
extends Object

Static library support version of the framework's FragmentTransaction. Used to write apps that run on platforms prior to Android 3.0. When running on Android 3.0 or above, this implementation is still used; it does not try to switch to the framework's implementation. See the framework SDK documentation for a class overview.


Field Summary
static int TRANSIT_ENTER_MASK
          Bit mask that is set for all enter transitions.
static int TRANSIT_EXIT_MASK
          Bit mask that is set for all exit transitions.
static int TRANSIT_FRAGMENT_CLOSE
          Fragment is being removed from the stack
static int TRANSIT_FRAGMENT_FADE
          Fragment should simply fade in or out; that is, no strong navigation associated with it except that it is appearing or disappearing for some reason.
static int TRANSIT_FRAGMENT_OPEN
          Fragment is being added onto the stack
static int TRANSIT_NONE
          No animation for transition.
static int TRANSIT_UNSET
          Not set up for a transition.
 
Constructor Summary
FragmentTransaction()
           
 
Method Summary
abstract  FragmentTransaction add(Fragment fragment, String tag)
          Calls add(int, Fragment, String) with a 0 containerViewId.
abstract  FragmentTransaction add(int containerViewId, Fragment fragment)
          Calls add(int, Fragment, String) with a null tag.
abstract  FragmentTransaction add(int containerViewId, Fragment fragment, String tag)
          Add a fragment to the activity state.
abstract  FragmentTransaction addToBackStack(String name)
          Add this transaction to the back stack.
abstract  FragmentTransaction attach(Fragment fragment)
          Re-attach a fragment after it had previously been deatched from the UI with detach(Fragment).
abstract  int commit()
          Schedules a commit of this transaction.
abstract  int commitAllowingStateLoss()
          Like commit() but allows the commit to be executed after an activity's state is saved.
abstract  FragmentTransaction detach(Fragment fragment)
          Detach the given fragment from the UI.
abstract  FragmentTransaction disallowAddToBackStack()
          Disallow calls to addToBackStack(String).
abstract  FragmentTransaction hide(Fragment fragment)
          Hides an existing fragment.
abstract  boolean isAddToBackStackAllowed()
          Returns true if this FragmentTransaction is allowed to be added to the back stack.
abstract  boolean isEmpty()
           
abstract  FragmentTransaction remove(Fragment fragment)
          Remove an existing fragment.
abstract  FragmentTransaction replace(int containerViewId, Fragment fragment)
          Calls replace(int, Fragment, String) with a null tag.
abstract  FragmentTransaction replace(int containerViewId, Fragment fragment, String tag)
          Replace an existing fragment that was added to a container.
abstract  FragmentTransaction setBreadCrumbShortTitle(CharSequence text)
          Like setBreadCrumbShortTitle(int) but taking a raw string; this method is not recommended, as the string can not be changed later if the locale changes.
abstract  FragmentTransaction setBreadCrumbShortTitle(int res)
          Set the short title to show as a bread crumb when this transaction is on the back stack.
abstract  FragmentTransaction setBreadCrumbTitle(CharSequence text)
          Like setBreadCrumbTitle(int) but taking a raw string; this method is not recommended, as the string can not be changed later if the locale changes.
abstract  FragmentTransaction setBreadCrumbTitle(int res)
          Set the full title to show as a bread crumb when this transaction is on the back stack.
abstract  FragmentTransaction setCustomAnimations(int enter, int exit)
          Set specific animation resources to run for the fragments that are entering and exiting in this transaction.
abstract  FragmentTransaction setCustomAnimations(int enter, int exit, int popEnter, int popExit)
          Set specific animation resources to run for the fragments that are entering and exiting in this transaction.
abstract  FragmentTransaction setTransition(int transit)
          Select a standard transition animation for this transaction.
abstract  FragmentTransaction setTransitionStyle(int styleRes)
          Set a custom style resource that will be used for resolving transit animations.
abstract  FragmentTransaction show(Fragment fragment)
          Shows a previously hidden fragment.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TRANSIT_ENTER_MASK

public static final int TRANSIT_ENTER_MASK
Bit mask that is set for all enter transitions.

See Also:
Constant Field Values

TRANSIT_EXIT_MASK

public static final int TRANSIT_EXIT_MASK
Bit mask that is set for all exit transitions.

See Also:
Constant Field Values

TRANSIT_UNSET

public static final int TRANSIT_UNSET
Not set up for a transition.

See Also:
Constant Field Values

TRANSIT_NONE

public static final int TRANSIT_NONE
No animation for transition.

See Also:
Constant Field Values

TRANSIT_FRAGMENT_OPEN

public static final int TRANSIT_FRAGMENT_OPEN
Fragment is being added onto the stack

See Also:
Constant Field Values

TRANSIT_FRAGMENT_CLOSE

public static final int TRANSIT_FRAGMENT_CLOSE
Fragment is being removed from the stack

See Also:
Constant Field Values

TRANSIT_FRAGMENT_FADE

public static final int TRANSIT_FRAGMENT_FADE
Fragment should simply fade in or out; that is, no strong navigation associated with it except that it is appearing or disappearing for some reason.

See Also:
Constant Field Values
Constructor Detail

FragmentTransaction

public FragmentTransaction()
Method Detail

add

public abstract FragmentTransaction add(Fragment fragment,
                                        String tag)
Calls add(int, Fragment, String) with a 0 containerViewId.


add

public abstract FragmentTransaction add(int containerViewId,
                                        Fragment fragment)
Calls add(int, Fragment, String) with a null tag.


add

public abstract FragmentTransaction add(int containerViewId,
                                        Fragment fragment,
                                        String tag)
Add a fragment to the activity state. This fragment may optionally also have its view (if Fragment.onCreateView returns non-null) into a container view of the activity.

Parameters:
containerViewId - Optional identifier of the container this fragment is to be placed in. If 0, it will not be placed in a container.
fragment - The fragment to be added. This fragment must not already be added to the activity.
tag - Optional tag name for the fragment, to later retrieve the fragment with FragmentManager.findFragmentByTag(String).
Returns:
Returns the same FragmentTransaction instance.

replace

public abstract FragmentTransaction replace(int containerViewId,
                                            Fragment fragment)
Calls replace(int, Fragment, String) with a null tag.


replace

public abstract FragmentTransaction replace(int containerViewId,
                                            Fragment fragment,
                                            String tag)
Replace an existing fragment that was added to a container. This is essentially the same as calling remove(Fragment) for all currently added fragments that were added with the same containerViewId and then add(int, Fragment, String) with the same arguments given here.

Parameters:
containerViewId - Identifier of the container whose fragment(s) are to be replaced.
fragment - The new fragment to place in the container.
tag - Optional tag name for the fragment, to later retrieve the fragment with FragmentManager.findFragmentByTag(String).
Returns:
Returns the same FragmentTransaction instance.

remove

public abstract FragmentTransaction remove(Fragment fragment)
Remove an existing fragment. If it was added to a container, its view is also removed from that container.

Parameters:
fragment - The fragment to be removed.
Returns:
Returns the same FragmentTransaction instance.

hide

public abstract FragmentTransaction hide(Fragment fragment)
Hides an existing fragment. This is only relevant for fragments whose views have been added to a container, as this will cause the view to be hidden.

Parameters:
fragment - The fragment to be hidden.
Returns:
Returns the same FragmentTransaction instance.

show

public abstract FragmentTransaction show(Fragment fragment)
Shows a previously hidden fragment. This is only relevant for fragments whose views have been added to a container, as this will cause the view to be shown.

Parameters:
fragment - The fragment to be shown.
Returns:
Returns the same FragmentTransaction instance.

detach

public abstract FragmentTransaction detach(Fragment fragment)
Detach the given fragment from the UI. This is the same state as when it is put on the back stack: the fragment is removed from the UI, however its state is still being actively managed by the fragment manager. When going into this state its view hierarchy is destroyed.

Parameters:
fragment - The fragment to be detached.
Returns:
Returns the same FragmentTransaction instance.

attach

public abstract FragmentTransaction attach(Fragment fragment)
Re-attach a fragment after it had previously been deatched from the UI with detach(Fragment). This causes its view hierarchy to be re-created, attached to the UI, and displayed.

Parameters:
fragment - The fragment to be attached.
Returns:
Returns the same FragmentTransaction instance.

isEmpty

public abstract boolean isEmpty()
Returns:
true if this transaction contains no operations, false otherwise.

setCustomAnimations

public abstract FragmentTransaction setCustomAnimations(int enter,
                                                        int exit)
Set specific animation resources to run for the fragments that are entering and exiting in this transaction. These animations will not be played when popping the back stack.


setCustomAnimations

public abstract FragmentTransaction setCustomAnimations(int enter,
                                                        int exit,
                                                        int popEnter,
                                                        int popExit)
Set specific animation resources to run for the fragments that are entering and exiting in this transaction. The popEnter and popExit animations will be played for enter/exit operations specifically when popping the back stack.


setTransition

public abstract FragmentTransaction setTransition(int transit)
Select a standard transition animation for this transaction. May be one of TRANSIT_NONE, TRANSIT_FRAGMENT_OPEN, or TRANSIT_FRAGMENT_CLOSE


setTransitionStyle

public abstract FragmentTransaction setTransitionStyle(int styleRes)
Set a custom style resource that will be used for resolving transit animations.


addToBackStack

public abstract FragmentTransaction addToBackStack(String name)
Add this transaction to the back stack. This means that the transaction will be remembered after it is committed, and will reverse its operation when later popped off the stack.

Parameters:
name - An optional name for this back stack state, or null.

isAddToBackStackAllowed

public abstract boolean isAddToBackStackAllowed()
Returns true if this FragmentTransaction is allowed to be added to the back stack. If this method would return false, addToBackStack(String) will throw IllegalStateException.

Returns:
True if addToBackStack(String) is permitted on this transaction.

disallowAddToBackStack

public abstract FragmentTransaction disallowAddToBackStack()
Disallow calls to addToBackStack(String). Any future calls to addToBackStack will throw IllegalStateException. If addToBackStack has already been called, this method will throw IllegalStateException.


setBreadCrumbTitle

public abstract FragmentTransaction setBreadCrumbTitle(int res)
Set the full title to show as a bread crumb when this transaction is on the back stack.

Parameters:
res - A string resource containing the title.

setBreadCrumbTitle

public abstract FragmentTransaction setBreadCrumbTitle(CharSequence text)
Like setBreadCrumbTitle(int) but taking a raw string; this method is not recommended, as the string can not be changed later if the locale changes.


setBreadCrumbShortTitle

public abstract FragmentTransaction setBreadCrumbShortTitle(int res)
Set the short title to show as a bread crumb when this transaction is on the back stack.

Parameters:
res - A string resource containing the title.

setBreadCrumbShortTitle

public abstract FragmentTransaction setBreadCrumbShortTitle(CharSequence text)
Like setBreadCrumbShortTitle(int) but taking a raw string; this method is not recommended, as the string can not be changed later if the locale changes.


commit

public abstract int commit()
Schedules a commit of this transaction. The commit does not happen immediately; it will be scheduled as work on the main thread to be done the next time that thread is ready.

A transaction can only be committed with this method prior to its containing activity saving its state. If the commit is attempted after that point, an exception will be thrown. This is because the state after the commit can be lost if the activity needs to be restored from its state. See commitAllowingStateLoss() for situations where it may be okay to lose the commit.

Returns:
Returns the identifier of this transaction's back stack entry, if addToBackStack(String) had been called. Otherwise, returns a negative number.

commitAllowingStateLoss

public abstract int commitAllowingStateLoss()
Like commit() but allows the commit to be executed after an activity's state is saved. This is dangerous because the commit can be lost if the activity needs to later be restored from its state, so this should only be used for cases where it is okay for the UI state to change unexpectedly on the user.



Copyright © 2013 Marek Kedzierski. All Rights Reserved.