Example usage for android.database Cursor unregisterDataSetObserver

List of usage examples for android.database Cursor unregisterDataSetObserver

Introduction

In this page you can find the example usage for android.database Cursor unregisterDataSetObserver.

Prototype

void unregisterDataSetObserver(DataSetObserver observer);

Source Link

Document

Unregister an observer that has previously been registered with this cursor via #registerContentObserver .

Usage

From source file:com.lightydev.dk.widget.PagerCursorAdapter.java

public Cursor swapCursor(Cursor newCursor) {
    if (mCursor == newCursor) {
        return null;
    }//  ww w  .j  a  v a  2  s  .co  m
    final Cursor oldCursor = mCursor;
    if (oldCursor != null) {
        oldCursor.unregisterDataSetObserver(mDataSetObserver);
    }
    mCursor = newCursor;
    if (mCursor != null) {
        mCursor.registerDataSetObserver(mDataSetObserver);
    }
    notifyDataSetChanged();
    return oldCursor;
}

From source file:cz.maresmar.sfm.view.menu.CursorPagerAdapter.java

/**
 * Replaces old {@link Cursor} with new one.
 *
 * @param newCursor New cursor to replace
 * @return Old cursor// w w  w  .j  av  a2 s .  c  om
 */
public Cursor swapCursor(@Nullable Cursor newCursor) {
    // Ignore same cursor
    if (newCursor == mCursor) {
        return null;
    }

    // Release old cursor
    final Cursor oldCursor = mCursor;
    if (oldCursor != null && mDataSetObserver != null) {
        oldCursor.unregisterDataSetObserver(mDataSetObserver);
    }

    // Prepare new cursor
    mCursor = newCursor;
    if (mCursor != null) {
        mCursor.registerDataSetObserver(mDataSetObserver);
        mIdColumnIndex = mCursor.getColumnIndexOrThrow(BaseColumns._ID);
    } else {
        mIdColumnIndex = -1;
    }

    // Update results in UI
    notifyDataSetChanged();
    return oldCursor;
}

From source file:com.cattle.util.CursorPagerAdapter.java

/**
 * Swap in a new Cursor, returning the old Cursor. Unlike {@link #changeCursor(android.database.Cursor)}, the
 * returned old Cursor is <em>not</em> closed.
 *
 * @param newCursor The new cursor to be used.
 * @return 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.
 *//*from   w w w. j  a v a  2  s .co  m*/
public Cursor swapCursor(Cursor newCursor) {
    if (newCursor == mCursor) {
        return null;
    }
    Cursor oldCursor = mCursor;
    if (oldCursor != null) {
        if (mChangeObserver != null) {
            oldCursor.unregisterContentObserver(mChangeObserver);
        }
        if (mDataSetObserver != null) {
            oldCursor.unregisterDataSetObserver(mDataSetObserver);
        }
    }
    mCursor = newCursor;
    if (newCursor != null) {
        if (mChangeObserver != null) {
            newCursor.registerContentObserver(mChangeObserver);
        }
        if (mDataSetObserver != null) {
            newCursor.registerDataSetObserver(mDataSetObserver);
        }
        mRowIDColumn = newCursor.getColumnIndexOrThrow("_id");
        mDataValid = true;
        // notify the observers about the new cursor
        notifyDataSetChanged();
    } else {
        mRowIDColumn = -1;
        mDataValid = false;
        // notify the observers about the lack of a data set
        notifyDataSetChanged();
    }
    return oldCursor;
}

From source file:uk.co.senab.photup.util.CursorPagerAdapter.java

/**
 * Swap in a new Cursor, returning the old Cursor. Unlike
 * {@link #changeCursor(Cursor)}, the returned old Cursor is <em>not</em>
 * closed.//from w  ww . ja v  a  2  s. co m
 * 
 * @param newCursor
 *            The new cursor to be used.
 * @return 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.
 */
public Cursor swapCursor(Cursor newCursor) {
    if (newCursor == mCursor) {
        return null;
    }
    Cursor oldCursor = mCursor;
    if (oldCursor != null) {
        if (mChangeObserver != null)
            oldCursor.unregisterContentObserver(mChangeObserver);
        if (mDataSetObserver != null)
            oldCursor.unregisterDataSetObserver(mDataSetObserver);
    }
    mCursor = newCursor;
    if (newCursor != null) {
        if (mChangeObserver != null)
            newCursor.registerContentObserver(mChangeObserver);
        if (mDataSetObserver != null)
            newCursor.registerDataSetObserver(mDataSetObserver);
        mRowIDColumn = newCursor.getColumnIndexOrThrow("_id");
        mDataValid = true;
        // notify the observers about the new cursor
        notifyDataSetChanged();
    } else {
        mRowIDColumn = -1;
        mDataValid = false;
        // notify the observers about the lack of a data set
        notifyDataSetChanged();
    }
    return oldCursor;
}

From source file:com.niveales.library.utils.MyCursorAdapter.java

/**
 * Swap in a new Cursor, returning the old Cursor.  Unlike
 * {@link #changeCursor(Cursor)}, the returned old Cursor is <em>not</em>
 * closed./*from w ww . ja v a  2s  .  c o  m*/
 *
 * @param newCursor The new cursor to be used.
 * @return Returns the previously set Cursor, or null if there wasa not one.
 * If the given new Cursor is the same instance is the previously set
 * Cursor, null is also returned.
 */
public Cursor swapCursor(Cursor newCursor) {
    if (newCursor == mCursor) {
        return null;
    }
    Cursor oldCursor = mCursor;
    if (oldCursor != null) {
        if (mChangeObserver != null)
            oldCursor.unregisterContentObserver(mChangeObserver);
        if (mDataSetObserver != null)
            oldCursor.unregisterDataSetObserver(mDataSetObserver);
    }
    mCursor = newCursor;
    if (newCursor != null) {
        if (mChangeObserver != null)
            newCursor.registerContentObserver(mChangeObserver);
        if (mDataSetObserver != null)
            newCursor.registerDataSetObserver(mDataSetObserver);
        mRowIDColumn = newCursor.getColumnIndexOrThrow(id_field);
        mDataValid = true;
        // notify the observers about the new cursor
        notifyDataSetChanged();
    } else {
        mRowIDColumn = -1;
        mDataValid = false;
        // notify the observers about the lack of a data set
        notifyDataSetInvalidated();
    }
    return oldCursor;
}