public
abstract
class
FragmentTransaction
extends Object
java.lang.Object | |
↳ | android.support.v4.app.FragmentTransaction |
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.
Constants | |
---|---|
int |
TRANSIT_ENTER_MASK
Bit mask that is set for all enter transitions. |
int |
TRANSIT_EXIT_MASK
Bit mask that is set for all exit transitions. |
int |
TRANSIT_FRAGMENT_CLOSE
Fragment is being removed from the stack |
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. |
int |
TRANSIT_FRAGMENT_OPEN
Fragment is being added onto the stack |
int |
TRANSIT_NONE
No animation for transition. |
int |
TRANSIT_UNSET
Not set up for a transition. |
Public constructors | |
---|---|
FragmentTransaction()
|
Public methods | |
---|---|
abstract
FragmentTransaction
|
add(Fragment fragment, String tag)
Calls |
abstract
FragmentTransaction
|
add(int containerViewId, Fragment fragment, String tag)
Add a fragment to the activity state. |
abstract
FragmentTransaction
|
add(int containerViewId, Fragment fragment)
Calls |
abstract
FragmentTransaction
|
addSharedElement(View sharedElement, String name)
Used with custom Transitions to map a View from a removed or hidden Fragment to a View from a shown or added Fragment. |
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 |
abstract
int
|
commit()
Schedules a commit of this transaction. |
abstract
int
|
commitAllowingStateLoss()
Like |
abstract
void
|
commitNow()
Commits this transaction synchronously. |
abstract
void
|
commitNowAllowingStateLoss()
Like |
abstract
FragmentTransaction
|
detach(Fragment fragment)
Detach the given fragment from the UI. |
abstract
FragmentTransaction
|
disallowAddToBackStack()
Disallow calls to |
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, String tag)
Replace an existing fragment that was added to a container. |
abstract
FragmentTransaction
|
replace(int containerViewId, Fragment fragment)
Calls |
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
|
setBreadCrumbShortTitle(CharSequence text)
Like |
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
|
setBreadCrumbTitle(CharSequence text)
Like |
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
|
setCustomAnimations(int enter, int exit)
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. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
int TRANSIT_ENTER_MASK
Bit mask that is set for all enter transitions.
Constant Value: 4096 (0x00001000)
int TRANSIT_EXIT_MASK
Bit mask that is set for all exit transitions.
Constant Value: 8192 (0x00002000)
int TRANSIT_FRAGMENT_CLOSE
Fragment is being removed from the stack
Constant Value: 8194 (0x00002002)
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.
Constant Value: 4099 (0x00001003)
int TRANSIT_FRAGMENT_OPEN
Fragment is being added onto the stack
Constant Value: 4097 (0x00001001)
int TRANSIT_NONE
No animation for transition.
Constant Value: 0 (0x00000000)
int TRANSIT_UNSET
Not set up for a transition.
Constant Value: -1 (0xffffffff)
FragmentTransaction ()
FragmentTransaction add (Fragment fragment, String tag)
Calls add(int, Fragment, String)
with a 0 containerViewId.
Parameters | |
---|---|
fragment |
Fragment
|
tag |
String
|
Returns | |
---|---|
FragmentTransaction |
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 |
int :
Optional identifier of the container this fragment is
to be placed in. If 0, it will not be placed in a container. |
fragment |
Fragment :
The fragment to be added. This fragment must not already
be added to the activity. |
tag |
String :
Optional tag name for the fragment, to later retrieve the
fragment with FragmentManager.findFragmentByTag(String) . |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
FragmentTransaction add (int containerViewId, Fragment fragment)
Calls add(int, Fragment, String)
with a null tag.
Parameters | |
---|---|
containerViewId |
int
|
fragment |
Fragment
|
Returns | |
---|---|
FragmentTransaction |
FragmentTransaction addSharedElement (View sharedElement, String name)
Used with custom Transitions to map a View from a removed or hidden Fragment to a View from a shown or added Fragment. sharedElement must have a unique transitionName in the View hierarchy.
Parameters | |
---|---|
sharedElement |
View :
A View in a disappearing Fragment to match with a View in an
appearing Fragment. |
name |
String :
The transitionName for a View in an appearing Fragment to match to the shared
element. |
Returns | |
---|---|
FragmentTransaction |
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 |
String :
An optional name for this back stack state, or null.
|
Returns | |
---|---|
FragmentTransaction |
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 |
Fragment :
The fragment to be attached. |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
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 | |
---|---|
int |
Returns the identifier of this transaction's back stack entry,
if addToBackStack(String) had been called. Otherwise, returns
a negative number.
|
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.
Returns | |
---|---|
int |
void commitNow ()
Commits this transaction synchronously. Any added fragments will be initialized and brought completely to the lifecycle state of their host and any removed fragments will be torn down accordingly before this call returns. Committing a transaction in this way allows fragments to be added as dedicated, encapsulated components that monitor the lifecycle state of their host while providing firmer ordering guarantees around when those fragments are fully initialized and ready. Fragments that manage views will have those views created and attached.
Calling commitNow
is preferable to calling
commit()
followed by executePendingTransactions()
as the latter will have the side effect of attempting to commit all
currently pending transactions whether that is the desired behavior
or not.
Transactions committed in this way may not be added to the
FragmentManager's back stack, as doing so would break other expected
ordering guarantees for other asynchronously committed transactions.
This method will throw IllegalStateException
if the transaction
previously requested to be added to the back stack with
addToBackStack(String)
.
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.
void commitNowAllowingStateLoss ()
Like commitNow()
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.
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 |
Fragment :
The fragment to be detached. |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
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.
Returns | |
---|---|
FragmentTransaction |
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 |
Fragment :
The fragment to be hidden. |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
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 | |
---|---|
boolean |
True if addToBackStack(String) is permitted on this transaction.
|
boolean isEmpty ()
Returns | |
---|---|
boolean |
true if this transaction contains no operations,
false otherwise.
|
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 |
Fragment :
The fragment to be removed. |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
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 |
int :
Identifier of the container whose fragment(s) are
to be replaced. |
fragment |
Fragment :
The new fragment to place in the container. |
tag |
String :
Optional tag name for the fragment, to later retrieve the
fragment with FragmentManager.findFragmentByTag(String) . |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |
FragmentTransaction replace (int containerViewId, Fragment fragment)
Calls replace(int, Fragment, String)
with a null tag.
Parameters | |
---|---|
containerViewId |
int
|
fragment |
Fragment
|
Returns | |
---|---|
FragmentTransaction |
FragmentTransaction setBreadCrumbShortTitle (int res)
Set the short title to show as a bread crumb when this transaction is on the back stack.
Parameters | |
---|---|
res |
int :
A string resource containing the title.
|
Returns | |
---|---|
FragmentTransaction |
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.
Parameters | |
---|---|
text |
CharSequence
|
Returns | |
---|---|
FragmentTransaction |
FragmentTransaction setBreadCrumbTitle (int res)
Set the full title to show as a bread crumb when this transaction is on the back stack.
Parameters | |
---|---|
res |
int :
A string resource containing the title.
|
Returns | |
---|---|
FragmentTransaction |
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.
Parameters | |
---|---|
text |
CharSequence
|
Returns | |
---|---|
FragmentTransaction |
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.
Parameters | |
---|---|
enter |
int
|
exit |
int
|
popEnter |
int
|
popExit |
int
|
Returns | |
---|---|
FragmentTransaction |
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.
Parameters | |
---|---|
enter |
int
|
exit |
int
|
Returns | |
---|---|
FragmentTransaction |
FragmentTransaction setTransition (int transit)
Select a standard transition animation for this transaction. May be
one of TRANSIT_NONE
, TRANSIT_FRAGMENT_OPEN
,
TRANSIT_FRAGMENT_CLOSE
, or TRANSIT_FRAGMENT_FADE
.
Parameters | |
---|---|
transit |
int
|
Returns | |
---|---|
FragmentTransaction |
FragmentTransaction setTransitionStyle (int styleRes)
Set a custom style resource that will be used for resolving transit animations.
Parameters | |
---|---|
styleRes |
int
|
Returns | |
---|---|
FragmentTransaction |
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 |
Fragment :
The fragment to be shown. |
Returns | |
---|---|
FragmentTransaction |
Returns the same FragmentTransaction instance. |