Example usage for android.widget ListAdapter registerDataSetObserver

List of usage examples for android.widget ListAdapter registerDataSetObserver

Introduction

In this page you can find the example usage for android.widget ListAdapter registerDataSetObserver.

Prototype

void registerDataSetObserver(DataSetObserver observer);

Source Link

Document

Register an observer that is called when changes happen to the data used by this adapter.

Usage

From source file:org.dmfs.webcal.adapters.SectionTitlesAdapter.java

public SectionTitlesAdapter(Context context, ListAdapter adapter, SectionIndexer indexer,
        int sectionHeaderViewid) {
    mAdaptedAdapter = adapter;//from   w w  w .j  a va2  s  .  co  m
    mIndexer = indexer;
    mSectionHeaderViewId = sectionHeaderViewid;
    adapter.registerDataSetObserver(new DataSetObserver() {
        @Override
        public void onChanged() {
            buildIndex();
        }
    });
    mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    buildIndex();
}

From source file:com.elegion.newsfeed.fragment.SwipeToRefreshList.java

public void setListAdapter(ListAdapter adapter) {
    final DataSetObserver dataSetObserver = mSwipeToDismissController.getDataSetObserver();
    final ListAdapter oldAdapter = mListView.getAdapter();
    if (oldAdapter != null) {
        oldAdapter.unregisterDataSetObserver(dataSetObserver);
    }/*from   w ww  . j a v a2 s  . c om*/
    mListView.setAdapter(adapter);
    adapter.registerDataSetObserver(dataSetObserver);
}

From source file:com.apptentive.android.sdk.module.messagecenter.view.MessageCenterListView.java

@Override
public void setAdapter(ListAdapter adapter) {
    // unregister observer at old adapter and register on new one
    ListAdapter oldAdapter = getAdapter();
    if (oldAdapter != null) {
        oldAdapter.unregisterDataSetObserver(dataSetObserver);
    }//from  w w w . j a v  a 2  s .  c o  m
    if (adapter != null) {
        adapter.registerDataSetObserver(dataSetObserver);
    }

    if (oldAdapter != adapter) {
        destroyStickyShadow();
    }

    super.setAdapter(adapter);
}

From source file:SwipeListView.java

/**
 * @see android.widget.ListView#setAdapter(android.widget.ListAdapter)
 *///  www.  j a v a2  s.c  o m
@Override
public void setAdapter(ListAdapter adapter) {
    super.setAdapter(adapter);
    touchListener.resetItems();
    adapter.registerDataSetObserver(new DataSetObserver() {
        @Override
        public void onChanged() {
            super.onChanged();
            onListChanged();
            touchListener.resetItems();
        }
    });
}

From source file:com.app.musicplayer.Custom.Swipe.SwipeListView.java

/**
 * @see android.widget.ListView#setAdapter(android.widget.ListAdapter)
 *//*from w  ww . ja  va 2s .c o  m*/
@Override
public void setAdapter(ListAdapter adapter) {
    super.setAdapter(adapter);
    touchListener.resetItems();
    adapter.registerDataSetObserver(new DataSetObserver() {

        @Override
        public void onChanged() {
            super.onChanged();
            onListChanged();
            touchListener.resetItems();
        }
    });
}

From source file:com.vincentbrison.openlibraries.android.swipelistview.SwipeListView.java

/**
 * @see android.widget.ListView#setAdapter(android.widget.ListAdapter)
 *///from  w  w w  .  j  a  v  a  2 s. c  om
@Override
public void setAdapter(ListAdapter adapter) {
    super.setAdapter(adapter);
    touchListener.resetItems();
    adapter.registerDataSetObserver(new DataSetObserver() {

        @Override
        public void onChanged() {
            super.onChanged();
            onListChanged();
            touchListener.resetItems();

        }
    });
}

From source file:cn.fantasee.swipwmenulistview.swipelistview.SwipeListView.java

/**
 * @see ListView#setAdapter(ListAdapter)
 *///from  w  w w  . ja va  2 s  . co  m
@Override
public void setAdapter(ListAdapter adapter) {
    super.setAdapter(adapter);
    touchListener.resetItems();
    if (null != adapter) {
        adapter.registerDataSetObserver(new DataSetObserver() {

            @Override
            public void onChanged() {
                super.onChanged();
                onListChanged();
                touchListener.resetItems();
            }
        });
    }
}

From source file:com.commonsware.cwac.masterdetail.MasterDetailHelper.java

/**
 * Initializes the master-detail UI. This should be called
 * from onCreate() of the activity that is implementing
 * the master-detail pattern./*from ww  w  .j ava 2s .  c  om*/
 * 
 * @param host
 *          the activity implementing the master-detail
 *          pattern
 * @param state
 *          the Bundle passed into the activity's
 *          onCreate() method
 */
@SuppressWarnings("unchecked")
public void onCreate(Activity host, Bundle state) {
    this.host = host;

    if (state != null) {
        pagerId = state.getInt(STATE_PAGER_ID, -1);
    }

    if (pagerId == -1) {
        pagerId = generateViewId(); // must have an ID to
                                    // work
    }

    modelCollectionFragment = (ModelCollectionFragment<T>) getFragmentManager()
            .findFragmentByTag(getModelFragmentTag());

    if (modelCollectionFragment == null) {
        modelCollectionFragment = new ModelCollectionFragment<T>().modelCollection(buildModelCollection());

        getFragmentManager().beginTransaction().add(modelCollectionFragment, getModelFragmentTag()).commit();
    }

    int minDip = getMinimumDipWidthForDualPane();

    if (getResources().getConfiguration().screenWidthDp >= minDip
            || getResources().getConfiguration().screenHeightDp >= minDip) {
        strategy = new MasterDetailStrategy.DualPane(this, pagerId);
    } else {
        strategy = new MasterDetailStrategy.SinglePane(this, pagerId);
    }

    pages = buildPagerAdapter(getFragmentManager());
    host.setContentView(strategy.getContentView(pages));
    lv = (ListView) host.findViewById(android.R.id.list);

    ListAdapter adapter = buildListAdapter();

    adapter.registerDataSetObserver(masterObserver);
    setListAdapter(adapter);

    if (offerActionMode()) {
        getListView().setOnItemLongClickListener(this);
    }

    getListView().setChoiceMode(getDefaultChoiceMode());

    if (state != null) {
        if (state.getBoolean(STATE_MC, false)) {
            getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
            getListView().setMultiChoiceModeListener(this);
        } else {
            int position = state.getInt(STATE_CHECKED, -1);

            if (position > -1 && state.getBoolean(STATE_SHOW_DETAIL, false)) {
                showDetail(position);
            } else {
                strategy.clearDetail();
            }
        }
    }
}

From source file:il.co.globes.android.swipeListView.SwipeListView.java

/**
 * @see android.widget.ListView#setAdapter(android.widget.ListAdapter)
 *//*from   www .j a v a2s  . c  o m*/
@Override
public void setAdapter(ListAdapter adapter) {
    super.setAdapter(adapter);
    touchListener.resetItems();
    if (adapter != null) {
        adapter.registerDataSetObserver(new DataSetObserver() {
            @Override
            public void onChanged() {
                super.onChanged();
                onListChanged();
                touchListener.resetItems();
            }
        });
    }
}

From source file:net.naonedbus.fragment.CustomListFragment.java

@Override
public void onLoadFinished(final Loader<AsyncResult<ListAdapter>> loader,
        final AsyncResult<ListAdapter> result) {
    if (DBG)//from  w  w w .jav a2  s . c  o m
        Log.d(LOG_TAG + "$" + getClass().getSimpleName(), "onLoadFinished " + result);

    if (result == null) {
        showMessage(mMessageEmptyTitleId, mMessageEmptySummaryId, mMessageEmptyDrawableId);
        return;
    }

    final Exception exception = result.getException();

    if (exception == null) {

        final ListAdapter adapter = result.getResult();
        setListAdapter(adapter);

        if (adapter == null) {
            showMessage(mMessageEmptyTitleId, mMessageEmptySummaryId, mMessageEmptyDrawableId);
        } else {
            adapter.registerDataSetObserver(new DataSetObserver() {
                @Override
                public void onChanged() {
                    super.onChanged();
                    onListAdapterChange(adapter);
                }
            });

            if (adapter.getCount() > 0) {
                if (mListViewStatePosition != -1 && isAdded()) {
                    getListView().setSelectionFromTop(mListViewStatePosition, mListViewStateTop);
                    mListViewStatePosition = -1;
                }

                showContent();
                resetNextUpdate();
            } else {
                showMessage(mMessageEmptyTitleId, mMessageEmptySummaryId, mMessageEmptyDrawableId);
            }
        }

    } else {

        int titleRes = R.string.error_title;
        int messageRes = R.string.error_summary;
        int drawableRes = R.drawable.warning;

        // Erreur rseau ou interne ?
        if (exception instanceof IOException) {
            titleRes = R.string.error_title_network;
            messageRes = R.string.error_summary_network;
            drawableRes = R.drawable.ic_thunderstorm;
        } else if (exception instanceof JSONException) {
            titleRes = R.string.error_title_webservice;
            messageRes = R.string.error_summary_webservice;
        }

        if (getListAdapter() == null || getListAdapter().isEmpty()) {
            showMessage(titleRes, messageRes, drawableRes);
        } else {
            Crouton.makeText(getActivity(), titleRes, Style.ALERT, (ViewGroup) getView()).show();
        }

        Log.e(getClass().getSimpleName(), "Erreur de chargement.", exception);
    }

    onPostExecute();
}