Example #1
0
  /**
   * @param adapter a regular ListAdapter, not all methods if the list adapter are used by the
   *     flipview
   */
  public void setAdapter(ListAdapter adapter) {
    if (mAdapter != null) {
      mAdapter.unregisterDataSetObserver(dataSetObserver);
    }

    // remove all the current views
    removeAllViews();

    mAdapter = adapter;
    mPageCount = adapter == null ? 0 : mAdapter.getCount();

    if (adapter != null) {
      mAdapter.registerDataSetObserver(dataSetObserver);

      mRecycler.setViewTypeCount(mAdapter.getViewTypeCount());
      mRecycler.invalidateScraps();
    }

    // TODO pretty confusing
    // this will be correctly set in setFlipDistance method
    mCurrentPageIndex = INVALID_PAGE_POSITION;
    mFlipDistance = INVALID_FLIP_DISTANCE;
    setFlipDistance(0);

    updateEmptyStatus();
  }
 @Override
 public void unregisterDataSetObserver(DataSetObserver observer) {
   mDataSetObservable.unregisterObserver(observer);
   if (mAdapter != null) {
     mAdapter.unregisterDataSetObserver(observer);
   }
 }
Example #3
0
  /**
   * @param adapter a regular ListAdapter, not all methods if the list adapter are used by the
   *     flipview
   */
  public void setAdapter(ListAdapter adapter) {
    if (mAdapter != null) {
      mAdapter.unregisterDataSetObserver(dataSetObserver);
    }

    // remove all the current views
    removeAllViews();
    mActivePageQueue.clear();

    mAdapter = adapter;
    mPageCount = adapter == null ? 0 : mAdapter.getCount();

    // put the current page within the new adapter range
    mCurrentPage =
        Math.min(mPageCount - 1, mCurrentPage == INVALID_PAGE_POSITION ? 0 : mCurrentPage);

    if (adapter != null) {
      mAdapter.registerDataSetObserver(dataSetObserver);
    }

    if (mCurrentPage != INVALID_PAGE_POSITION) {
      mRecycler.setViewTypeCount(mAdapter.getViewTypeCount());
      mCurrentPageId = mAdapter.getItemId(mCurrentPage);
      addView(viewForPage(mCurrentPage));
    } else {
      mPageCount = 0;
      mFlipDistance = 0;
    }

    updateEmptyStatus();
  }
Example #4
0
 private void dataSetInvalidated() {
   if (mAdapter != null) {
     mAdapter.unregisterDataSetObserver(dataSetObserver);
     mAdapter = null;
   }
   mRecycler = new Recycler();
   removeAllViews();
 }
 @Override
 public void setAdapter(ListAdapter adapter) {
   if (mAdapter != null) {
     mAdapter.unregisterDataSetObserver(mDataObserver);
   }
   mAdapter = adapter;
   mAdapter.registerDataSetObserver(mDataObserver);
   reset();
 }
  public void setAdapter(ListAdapter adapter) {
    if (mObserver == null) {
      mObserver = new PopupDataSetObserver();
    } else if (mAdapter != null) {
      mAdapter.unregisterDataSetObserver(mObserver);
    }
    mAdapter = adapter;
    if (mAdapter != null) {
      adapter.registerDataSetObserver(mObserver);
    }

    if (mDropDownList != null) {
      mDropDownList.setAdapter(mAdapter);
    }
  }
  public void setAdapter(ListAdapter adapter) {
    if (mAdapter != null && mDataSetObserver != null) {
      mAdapter.unregisterDataSetObserver(mDataSetObserver);
    }

    resetList();
    mAdapter = adapter;
    if (mAdapter != null) {
      mDataSetObserver = new AdapterDataSetObserver();
      mAdapter.registerDataSetObserver(mDataSetObserver);
      setupChildren();
    }

    requestLayout();
  }
Example #8
0
  @Override
  public void setAdapter(ListAdapter adapter) {
    if (mAdapter != null) {
      mAdapter.unregisterDataSetObserver(mAdapterDataObserver);
    }

    if (adapter != null) {
      // Clear so we can notify again as we run out of data
      mHasNotifiedRunningLowOnData = false;

      mAdapter = adapter;
      mAdapter.registerDataSetObserver(mAdapterDataObserver);
    }

    initializeRecycledViewCache(mAdapter.getViewTypeCount());
    reset();
  }
  @Override
  public void setAdapter(ListAdapter adapter) {
    if (mListAdapter != null) mListAdapter.unregisterDataSetObserver(mDataSetObserver);

    clearStack();
    mTopCard = null;
    mListAdapter = adapter;
    mNextAdapterPosition = 0;
    adapter.registerDataSetObserver(mDataSetObserver);

    ensureFull();

    if (getChildCount() != 0) {
      mTopCard = getChildAt(getChildCount() - 1);
      mTopCard.setLayerType(LAYER_TYPE_HARDWARE, null);
    }
    mNumberOfCards = getAdapter().getCount();
    requestLayout();
  }
  @Override
  public void setAdapter(ListAdapter adapter) {

    // assert adapter in debug mode
    /*		if (BuildConfig.DEBUG && adapter != null) {
    	if (!(adapter instanceof PinnedSectionListAdapter))
    		throw new IllegalArgumentException("Does your adapter implement PinnedSectionListAdapter?");
    	if (adapter.getViewTypeCount() < 2)
    		throw new IllegalArgumentException("Does your adapter handle at least two types" +
    				" of views in getViewTypeCount() method: items and sections?");
    }*/

    // unregister observer at old adapter and register on new one
    ListAdapter oldAdapter = getAdapter();
    if (oldAdapter != null) oldAdapter.unregisterDataSetObserver(mDataSetObserver);
    if (adapter != null) adapter.registerDataSetObserver(mDataSetObserver);

    // destroy pinned shadow, if new adapter is not same as old one
    if (oldAdapter != adapter) destroyPinnedShadow();

    super.setAdapter(adapter);
  }
 @Override
 public void unregisterDataSetObserver(final DataSetObserver observer) {
   wrapped.unregisterDataSetObserver(observer);
 }
 public void unregisterDataSetObserver(DataSetObserver observer) {
   if (mAdapter != null) {
     mAdapter.unregisterDataSetObserver(observer);
   }
 }
package com.lib.custom.widget;
Example #14
0
 @Override
 public void unregisterDataSetObserver(DataSetObserver observer) {
   mAdapter.unregisterDataSetObserver(observer);
 }