Android Open Source - EasyListViewAdapters Base Employee Cursor Activity






From Project

Back to project page EasyListViewAdapters.

License

The source code is released under:

Apache License

If you think the Android project EasyListViewAdapters listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/**
 * Copyright 2014-present Biraj Patel/*  w w  w . j av  a  2 s. c  o  m*/
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.birin.easycursoradapter.base;

import android.app.Activity;
import android.app.FragmentManager;
import android.app.LoaderManager.LoaderCallbacks;
import android.content.CursorLoader;
import android.content.Loader;
import android.database.Cursor;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ListView;

import com.birin.easycursoradapter.datasetup.CursorRetainingFragment;
import com.birin.easycursoradapter.datasetup.TestContentProvider;
import com.birin.easylistviewadaptersdemo.R;

public abstract class BaseEmployeeCursorActivity extends Activity implements
    LoaderCallbacks<Cursor> {

  protected ListView listView;
  private static final String TAG_RETAINED_FRAGMENT = "retained_fragment";

  protected BaseEmployeeEasyCursorAdapter listviewAdapter;
  protected CursorRetainingFragment dataRetainingFragment;
  protected LayoutInflater inflater;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    inflater = LayoutInflater.from(getApplicationContext());
    loadRetainedFragment();
    listView = (ListView) findViewById(R.id.list_view);
    listviewAdapter = getListViewAdapter();
    bindAdapterToList();
    getLoaderManager().initLoader(0, null, this);
  }

  protected void bindAdapterToList() {
    listView.setAdapter(listviewAdapter);
  }

  private void loadRetainedFragment() {
    FragmentManager fm = getFragmentManager();
    dataRetainingFragment = (CursorRetainingFragment) fm
        .findFragmentByTag(TAG_RETAINED_FRAGMENT);

    // If the Fragment is non-null, then it is currently being
    // retained across a configuration
    // changgenerateSomeDummyDataAndAddToList();e.
    if (dataRetainingFragment == null) {
      dataRetainingFragment = getCursorRetainingFragment();
      if (dataRetainingFragment != null) {
        fm.beginTransaction()
            .add(dataRetainingFragment, TAG_RETAINED_FRAGMENT)
            .commit();
      }
    }
  }

  protected CursorRetainingFragment getCursorRetainingFragment() {
    return new CursorRetainingFragment();
  }

  @Override
  public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
    return new CursorLoader(getApplicationContext(),
        TestContentProvider.CONTENT_URI_EMPLOYEE, null, null, null,
        null);
  }

  @Override
  public void onLoadFinished(Loader<Cursor> arg0, Cursor data) {
    if (null != data && data.getCount() > 0) {
      findViewById(R.id.place_holder_text).setVisibility(View.GONE);
      listView.setVisibility(View.VISIBLE);
      listviewAdapter.swapCursor(data);
    }
  }

  @Override
  public void onLoaderReset(Loader<Cursor> arg0) {
    listviewAdapter.swapCursor(null);
  }

  protected abstract BaseEmployeeEasyCursorAdapter getListViewAdapter();

}




Java Source Code List

com.birin.easycursoradapter.base.BaseEmployeeCursorActivity.java
com.birin.easycursoradapter.base.BaseEmployeeEasyCursorAdapter.java
com.birin.easycursoradapter.datasetup.CursorRetainingFragment.java
com.birin.easycursoradapter.datasetup.TestContentProviderSqlHelper.java
com.birin.easycursoradapter.datasetup.TestContentProvider.java
com.birin.easycursoradapter.demo1.TwoRowTypesActivity.java
com.birin.easycursoradapter.demo1.TwoRowTypesEasyCursorAdapter.java
com.birin.easycursoradapter.demo2.ChildrenClickingDemoActivity.java
com.birin.easycursoradapter.demo2.ChildrenClickingDemoAdapter.java
com.birin.easycursoradapter.demo2.ChildrenClickingProjectManagerRow.java
com.birin.easycursoradapter.demo2.ChildrenClickingRegularEmployeeRow.java
com.birin.easycursoradapter.demo3.UnlimitedItemsTwoRowTypesActivityAutoloadMore.java
com.birin.easycursoradapter.demo4.UnlimitedItemsTwoRowTypesActivityClickToloadMore.java
com.birin.easycursoradapter.rows.ProjectManagerCursorRowViewSetter.java
com.birin.easycursoradapter.rows.RegularEmployeeCursorRowViewSetter.java
com.birin.easylistadapter.base.BaseDataListRetainingFragment.java
com.birin.easylistadapter.base.BaseEmployeeEasyListAdapter.java
com.birin.easylistadapter.base.BaseEmployeeListActivity.java
com.birin.easylistadapter.datasetup.Employee.java
com.birin.easylistadapter.datasetup.ProjectManager.java
com.birin.easylistadapter.datasetup.RegularEmployee.java
com.birin.easylistadapter.demo1.SimplestEasyListAdapterUsageDemoActivity.java
com.birin.easylistadapter.demo2.SingleRowTypeActivity.java
com.birin.easylistadapter.demo2.SingleRowTypeDataListRetainingFragment.java
com.birin.easylistadapter.demo2.SingleRowTypeEasyListAdapter.java
com.birin.easylistadapter.demo3.TwoRowTypesActivity.java
com.birin.easylistadapter.demo3.TwoRowTypesDataListRetainingFragment.java
com.birin.easylistadapter.demo3.TwoRowTypesEasyListAdapter.java
com.birin.easylistadapter.demo4.ChildrenClickingDemoActivity.java
com.birin.easylistadapter.demo4.ChildrenClickingDemoAdapter.java
com.birin.easylistadapter.demo4.ChildrenClickingProjectManagerRow.java
com.birin.easylistadapter.demo4.ChildrenClickingRegularEmployeeRow.java
com.birin.easylistadapter.demo4.EmployeeDataDeleter.java
com.birin.easylistadapter.demo5.UnlimitedItemsTwoRowTypesActivityAutoloadMore.java
com.birin.easylistadapter.demo6.UnlimitedItemsTwoRowTypesActivityAutoloadMoreMax100Items.java
com.birin.easylistadapter.demo7.UnlimitedItemsTwoRowTypesActivityClickToloadMore.java
com.birin.easylistadapter.rows.ProjectManagerListRowViewSetter.java
com.birin.easylistadapter.rows.RegularEmployeeListRowViewSetter.java
com.birin.easylistviewadapters.BaseRowViewSetter.java
com.birin.easylistviewadapters.CursorFilter.java
com.birin.easylistviewadapters.CursorRowViewSetter.java
com.birin.easylistviewadapters.EasyBaseAdapter.java
com.birin.easylistviewadapters.EasyCursorAdapter.java
com.birin.easylistviewadapters.EasyListAdapter.java
com.birin.easylistviewadapters.ListRowViewSetter.java
com.birin.easylistviewadapters.Row.java
com.birin.easylistviewadapters.utils.ChildViewsClickHandler.java
com.birin.easylistviewadapters.utils.OnLoadMoreRequestListener.java
com.birin.easylistviewadapters.utils.ViewHolderPositionTagger.java
com.birin.easylistviewadaptersdemo.BaseDemoMenuList.java
com.birin.easylistviewadaptersdemo.CursorDataDemos.java
com.birin.easylistviewadaptersdemo.JavaUtilListDataDemos.java
com.birin.easylistviewadaptersdemo.ParentDemoMenuList.java
com.birin.easylistviewadaptersdemo.common.CharacterDrawable.java
com.birin.easylistviewadaptersdemo.common.Constants.java
com.birin.easylistviewadaptersdemo.common.ProjectManagerRowViewHolder.java
com.birin.easylistviewadaptersdemo.common.RandomInfoGenerator.java
com.birin.easylistviewadaptersdemo.common.RegularEmployeeRowViewHolder.java