# CursorAdapter

Artifact: [androidx.cursoradapter:cursoradapter](https://developer.android.com/jetpack/androidx/releases/cursoradapter) [View Source](https://cs.android.com/search?q=file:androidx/cursoradapter/widget/CursorAdapter.java+class:androidx.cursoradapter.widget.CursorAdapter) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

*** ** * ** ***


```
public abstract class CursorAdapter extends BaseAdapter implements Filterable
```

<br />

|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) |||
| ↳ | [android.widget.BaseAdapter](https://developer.android.com/reference/android/widget/BaseAdapter.html) ||
|   | ↳ | [androidx.cursoradapter.widget.CursorAdapter](https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter) |

Known direct subclasses [ResourceCursorAdapter](https://developer.android.com/reference/androidx/cursoradapter/widget/ResourceCursorAdapter)

|---|---|
| `https://developer.android.com/reference/androidx/cursoradapter/widget/ResourceCursorAdapter` | Static library support version of the framework's `https://developer.android.com/reference/android/widget/ResourceCursorAdapter.html`. |

Known indirect subclasses [SimpleCursorAdapter](https://developer.android.com/reference/androidx/cursoradapter/widget/SimpleCursorAdapter)

|---|---|
| `https://developer.android.com/reference/androidx/cursoradapter/widget/SimpleCursorAdapter` | Static library support version of the framework's `https://developer.android.com/reference/android/widget/SimpleCursorAdapter.html`. |

*** ** * ** ***

Static library support version of the framework's `https://developer.android.com/reference/android/widget/CursorAdapter.html`. 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.

## Summary

| ### Constants |
|---|---|
| `static final int` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_AUTO_REQUERY() = 1` **This field is deprecated.** This option is discouraged, as it results in Cursor queries being performed on the application's UI thread and thus can cause poor responsiveness or even Application Not Responding errors. <br /> |
| `static final int` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_REGISTER_CONTENT_OBSERVER() = 2` If set the adapter will register a content observer on the cursor and will call `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#onContentChanged()` when a notification comes in. |

| ### Public constructors |
|---|
| `[CursorAdapter](https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#CursorAdapter(android.content.Context,android.database.Cursor))(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html c)` **This method is deprecated.** This option is discouraged, as it results in Cursor queries being performed on the application's UI thread and thus can cause poor responsiveness or even Application Not Responding errors. <br /> |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#CursorAdapter(android.content.Context,android.database.Cursor,boolean)(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html c, boolean autoRequery)` Constructor that allows control over auto-requery. |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#CursorAdapter(android.content.Context,android.database.Cursor,int)(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html c, int flags)` Recommended constructor. |

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#bindView(android.view.View,android.content.Context,android.database.Cursor)(https://developer.android.com/reference/android/view/View.html view, https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html cursor)` Bind an existing view to the data pointed to by cursor |
| `void` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#changeCursor(android.database.Cursor)(https://developer.android.com/reference/android/database/Cursor.html cursor)` Change the underlying cursor to a new cursor. |
| `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#convertToString(android.database.Cursor)(https://developer.android.com/reference/android/database/Cursor.html cursor)` Converts the cursor into a CharSequence. |
| `int` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getCount()()` |
| `https://developer.android.com/reference/android/database/Cursor.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getCursor()()` Returns the cursor. |
| `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getDropDownView(int,android.view.View,android.view.ViewGroup)(int position, https://developer.android.com/reference/android/view/View.html convertView, https://developer.android.com/reference/android/view/ViewGroup.html parent)` |
| `https://developer.android.com/reference/android/widget/Filter.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getFilter()()` |
| `https://developer.android.com/reference/android/widget/FilterQueryProvider.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getFilterQueryProvider()()` Returns the query filter provider used for filtering. |
| `https://developer.android.com/reference/java/lang/Object.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getItem(int)(int position)` |
| `long` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getItemId(int)(int position)` |
| `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getView(int,android.view.View,android.view.ViewGroup)(int position, https://developer.android.com/reference/android/view/View.html convertView, https://developer.android.com/reference/android/view/ViewGroup.html parent)` |
| `boolean` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#hasStableIds()()` |
| `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#newDropDownView(android.content.Context,android.database.Cursor,android.view.ViewGroup)(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html cursor, https://developer.android.com/reference/android/view/ViewGroup.html parent)` Makes a new drop down view to hold the data pointed to by cursor. |
| `abstract https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#newView(android.content.Context,android.database.Cursor,android.view.ViewGroup)(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html cursor, https://developer.android.com/reference/android/view/ViewGroup.html parent)` Makes a new view to hold the data pointed to by cursor. |
| `https://developer.android.com/reference/android/database/Cursor.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#runQueryOnBackgroundThread(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html constraint)` Runs a query with the specified constraint. |
| `void` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#setFilterQueryProvider(android.widget.FilterQueryProvider)(https://developer.android.com/reference/android/widget/FilterQueryProvider.html filterQueryProvider)` Sets the query filter provider used to filter the current Cursor. |
| `https://developer.android.com/reference/android/database/Cursor.html` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#swapCursor(android.database.Cursor)(https://developer.android.com/reference/android/database/Cursor.html newCursor)` Swap in a new Cursor, returning the old Cursor. |

| ### Protected methods |
|---|---|
| `void` | `[init](https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#init(android.content.Context,android.database.Cursor,boolean))(https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/database/Cursor.html c, boolean autoRequery)` **This method is deprecated.** Don't use this, use the normal constructor. <br /> |
| `void` | `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#onContentChanged()()` Called when the `https://developer.android.com/reference/android/database/ContentObserver.html` on the cursor receives a change notification. |

| ### Inherited Constants |
|---|
| From [android.widget.Adapter](https://developer.android.com/reference/android/widget/Adapter.html) |---|---| | `static final int` | `https://developer.android.com/reference/android/widget/Adapter.html#IGNORE_ITEM_VIEW_TYPE = -1` | | `static final int` | `https://developer.android.com/reference/android/widget/Adapter.html#NO_SELECTION = -2147483648` | |

| ### Inherited methods |
|---|
| From [android.widget.BaseAdapter](https://developer.android.com/reference/android/widget/BaseAdapter.html) |---|---| | `boolean` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#areAllItemsEnabled()()` | | `CharSequence[]` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#getAutofillOptions()()` | | `int` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#getItemViewType(int)(int position)` | | `int` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#getViewTypeCount()()` | | `boolean` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#isEmpty()()` | | `boolean` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#isEnabled(int)(int position)` | | `void` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#notifyDataSetChanged()()` | | `void` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#notifyDataSetInvalidated()()` | | `void` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#registerDataSetObserver(android.database.DataSetObserver)(https://developer.android.com/reference/android/database/DataSetObserver.html observer)` | | `void` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#setAutofillOptions(java.lang.CharSequence...)(CharSequence[] options)` | | `void` | `https://developer.android.com/reference/android/widget/BaseAdapter.html#unregisterDataSetObserver(android.database.DataSetObserver)(https://developer.android.com/reference/android/database/DataSetObserver.html observer)` | |

## Constants

### FLAG_AUTO_REQUERY

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0) Deprecated in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public static final int FLAG_AUTO_REQUERY = 1
```

> [!CAUTION]
> **This field is deprecated.**   
>
> This option is discouraged, as it results in Cursor queries being performed on the application's UI thread and thus can cause poor responsiveness or even Application Not Responding errors. As an alternative, use `https://developer.android.com/reference/android/app/LoaderManager.html` with a `https://developer.android.com/reference/android/content/CursorLoader.html`.

If set the adapter will call requery() on the cursor whenever a content change notification is delivered. Implies `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_REGISTER_CONTENT_OBSERVER()`.

### FLAG_REGISTER_CONTENT_OBSERVER

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public static final int FLAG_REGISTER_CONTENT_OBSERVER = 2
```

If set the adapter will register a content observer on the cursor and will call `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#onContentChanged()` when a notification comes in. Be careful when using this flag: you will need to unset the current Cursor from the adapter to avoid leaks due to its registered observers. This flag is not needed when using a CursorAdapter with a `https://developer.android.com/reference/android/content/CursorLoader.html`.

## Public constructors

### CursorAdapter

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0) Deprecated in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public [CursorAdapter](https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#CursorAdapter(android.content.Context,android.database.Cursor))(Context context, Cursor c)
```

> [!CAUTION]
> **This method is deprecated.**   
>
> This option is discouraged, as it results in Cursor queries being performed on the application's UI thread and thus can cause poor responsiveness or even Application Not Responding errors. As an alternative, use `https://developer.android.com/reference/android/app/LoaderManager.html` with a `https://developer.android.com/reference/android/content/CursorLoader.html`.

Constructor that always enables auto-requery.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/content/Context.html context` | The context |
| `https://developer.android.com/reference/android/database/Cursor.html c` | The cursor from which to get the data. |

### CursorAdapter

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public CursorAdapter(Context context, Cursor c, boolean autoRequery)
```

Constructor that allows control over auto-requery. It is recommended you not use this, but instead `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#CursorAdapter(android.content.Context,android.database.Cursor,int)`. When using this constructor, `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_REGISTER_CONTENT_OBSERVER()` will always be set.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/content/Context.html context` | The context |
| `https://developer.android.com/reference/android/database/Cursor.html c` | The cursor from which to get the data. |
| `boolean autoRequery` | If true the adapter will call requery() on the cursor whenever it changes so the most recent data is always displayed. Using true here is discouraged. |

### CursorAdapter

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public CursorAdapter(Context context, Cursor c, int flags)
```

Recommended constructor.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/content/Context.html context` | The context |
| `https://developer.android.com/reference/android/database/Cursor.html c` | The cursor from which to get the data. |
| `int flags` | Flags used to determine the behavior of the adapter; may be any combination of `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_AUTO_REQUERY()` and `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#FLAG_REGISTER_CONTENT_OBSERVER()`. |

## Public methods

### bindView

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public abstract void bindView(View view, Context context, Cursor cursor)
```

Bind an existing view to the data pointed to by cursor

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/view/View.html view` | Existing view, returned earlier by newView |
| `https://developer.android.com/reference/android/content/Context.html context` | Interface to application's global information |
| `https://developer.android.com/reference/android/database/Cursor.html cursor` | The cursor from which to get the data. The cursor is already moved to the correct position. |

### changeCursor

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public void changeCursor(Cursor cursor)
```

Change the underlying cursor to a new cursor. If there is an existing cursor it will be closed.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html cursor` | The new cursor to be used |

### convertToString

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public CharSequence convertToString(Cursor cursor)
```

Converts the cursor into a CharSequence. Subclasses should override this method to convert their results. The default implementation returns an empty String for null values or the default String representation of the value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html cursor` | the cursor to convert to a CharSequence |

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence.html` | a CharSequence representing the value |

### getCount

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public int getCount()
```

| See also |
|---|---|
| `https://developer.android.com/reference/android/widget/Adapter.html#getCount()` |   |

### getCursor

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public Cursor getCursor()
```

Returns the cursor.

| Returns |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html` | the cursor. |

### getDropDownView

```
public View getDropDownView(int position, View convertView, ViewGroup parent)
```

### getFilter

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public Filter getFilter()
```

### getFilterQueryProvider

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public FilterQueryProvider getFilterQueryProvider()
```

Returns the query filter provider used for filtering. When the provider is null, no filtering occurs.

| Returns |
|---|---|
| `https://developer.android.com/reference/android/widget/FilterQueryProvider.html` | the current filter query provider or null if it does not exist |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#setFilterQueryProvider(android.widget.FilterQueryProvider)` |   |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#runQueryOnBackgroundThread(java.lang.CharSequence)` |   |

### getItem

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public Object getItem(int position)
```

| See also |
|---|---|
| `https://developer.android.com/reference/android/widget/Adapter.html#getItem(int)` |   |

### getItemId

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public long getItemId(int position)
```

| See also |
|---|---|
| `https://developer.android.com/reference/android/widget/Adapter.html#getItemId(int)` |   |

### getView

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public View getView(int position, View convertView, ViewGroup parent)
```

| See also |
|---|---|
| `https://developer.android.com/reference/android/widget/Adapter.html#getView(int, android.view.View, android.view.ViewGroup)` |   |

### hasStableIds

```
public boolean hasStableIds()
```

### newDropDownView

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public View newDropDownView(Context context, Cursor cursor, ViewGroup parent)
```

Makes a new drop down view to hold the data pointed to by cursor.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/content/Context.html context` | Interface to application's global information |
| `https://developer.android.com/reference/android/database/Cursor.html cursor` | The cursor from which to get the data. The cursor is already moved to the correct position. |
| `https://developer.android.com/reference/android/view/ViewGroup.html parent` | The parent to which the new view is attached to |

| Returns |
|---|---|
| `https://developer.android.com/reference/android/view/View.html` | the newly created view. |

### newView

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public abstract View newView(Context context, Cursor cursor, ViewGroup parent)
```

Makes a new view to hold the data pointed to by cursor.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/content/Context.html context` | Interface to application's global information |
| `https://developer.android.com/reference/android/database/Cursor.html cursor` | The cursor from which to get the data. The cursor is already moved to the correct position. |
| `https://developer.android.com/reference/android/view/ViewGroup.html parent` | The parent to which the new view is attached to |

| Returns |
|---|---|
| `https://developer.android.com/reference/android/view/View.html` | the newly created view. |

### runQueryOnBackgroundThread

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public Cursor runQueryOnBackgroundThread(CharSequence constraint)
```

Runs a query with the specified constraint. This query is requested by the filter attached to this adapter. The query is provided by a `https://developer.android.com/reference/android/widget/FilterQueryProvider.html`. If no provider is specified, the current cursor is not filtered and returned. After this method returns the resulting cursor is passed to `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#changeCursor(android.database.Cursor)` and the previous cursor is closed. This method is always executed on a background thread, not on the application's main thread (or UI thread.) Contract: when constraint is null or empty, the original results, prior to any filtering, must be returned.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence.html constraint` | the constraint with which the query must be filtered |

| Returns |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html` | a Cursor representing the results of the new query |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getFilter()` |   |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getFilterQueryProvider()` |   |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#setFilterQueryProvider(android.widget.FilterQueryProvider)` |   |

### setFilterQueryProvider

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public void setFilterQueryProvider(FilterQueryProvider filterQueryProvider)
```

Sets the query filter provider used to filter the current Cursor. The provider's `https://developer.android.com/reference/android/widget/FilterQueryProvider.html#runQuery(java.lang.CharSequence)` method is invoked when filtering is requested by a client of this adapter.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/widget/FilterQueryProvider.html filterQueryProvider` | the filter query provider or null to remove it |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#getFilterQueryProvider()` |   |
| `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#runQueryOnBackgroundThread(java.lang.CharSequence)` |   |

### swapCursor

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
public Cursor swapCursor(Cursor newCursor)
```

Swap in a new Cursor, returning the old Cursor. Unlike `https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#changeCursor(android.database.Cursor)`, the returned old Cursor is *not* closed.

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html newCursor` | The new cursor to be used. |

| Returns |
|---|---|
| `https://developer.android.com/reference/android/database/Cursor.html` | Returns the previously set Cursor, or null if there was not one. If the given new Cursor is the same instance is the previously set Cursor, null is also returned. |

## Protected methods

### init

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0) Deprecated in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
protected void [init](https://developer.android.com/reference/androidx/cursoradapter/widget/CursorAdapter#init(android.content.Context,android.database.Cursor,boolean))(Context context, Cursor c, boolean autoRequery)
```

> [!CAUTION]
> **This method is deprecated.**   
>
> Don't use this, use the normal constructor. This will be removed in the future.

### onContentChanged

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/cursoradapter#1.0.0)

```
protected void onContentChanged()
```

Called when the `https://developer.android.com/reference/android/database/ContentObserver.html` on the cursor receives a change notification. The default implementation provides the auto-requery logic, but may be overridden by sub classes.

| See also |
|---|---|
| `https://developer.android.com/reference/android/database/ContentObserver.html#onChange(boolean)` |   |