LoaderManager.LoaderCallbacks

interface LoaderManager.LoaderCallbacks<D>


Callback interface for a client to interact with the manager.

Summary

Public functions

Loader<D!>

Instantiate and return a new Loader for the given ID.

Unit
@MainThread
onLoadFinished(loader: Loader<D!>, data: D!)

Called when a previously created loader has finished its load.

Unit

Called when a previously created loader is being reset, and thus making its data unavailable.

Public functions

onCreateLoader

Added in 1.0.0
@MainThread
fun onCreateLoader(id: Int, args: Bundle?): Loader<D!>

Instantiate and return a new Loader for the given ID.

This will always be called from the process's main thread.

Parameters
id: Int

The ID whose loader is to be created.

args: Bundle?

Any arguments supplied by the caller.

Returns
Loader<D!>

Return a new Loader instance that is ready to start loading.

onLoadFinished

Added in 1.0.0
@MainThread
fun onLoadFinished(loader: Loader<D!>, data: D!): Unit

Called when a previously created loader has finished its load. Note that normally an application is not allowed to commit fragment transactions while in this call, since it can happen after an activity's state is saved. See FragmentManager.openTransaction() for further discussion on this.

This function is guaranteed to be called prior to the release of the last data that was supplied for this Loader. At this point you should remove all use of the old data (since it will be released soon), but should not do your own release of the data since its Loader owns it and will take care of that. The Loader will take care of management of its data so you don't have to. In particular:

This will always be called from the process's main thread.

Parameters
loader: Loader<D!>

The Loader that has finished.

data: D!

The data generated by the Loader.

onLoaderReset

Added in 1.0.0
@MainThread
fun onLoaderReset(loader: Loader<D!>): Unit

Called when a previously created loader is being reset, and thus making its data unavailable. The application should at this point remove any references it has to the Loader's data.

This will always be called from the process's main thread.

Parameters
loader: Loader<D!>

The Loader that is being reset.