Android Open Source - RZAndroidBaseUtils View Group Adapter Example Activity






From Project

Back to project page RZAndroidBaseUtils.

License

The source code is released under:

MIT License

If you think the Android project RZAndroidBaseUtils 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

package com.raizlabs.baseutils.examples.viewgroupadapter;
/*from   w w  w .j  a  v a  2 s.c om*/
import java.util.LinkedList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.TextView;

import com.raizlabs.baseutils.examples.R;
import com.raizlabs.widget.adapters.ViewGroupAdapter;
import com.raizlabs.widget.adapters.ViewGroupAdapter.ItemClickedListener;

/**
 * Simple example of a {@link ViewGroupAdapter} that displays incrementing
 * strings.
 * @author Dylan James
 */
public class ViewGroupAdapterExampleActivity extends Activity {
  private int currentCount = 0;
  private ViewGroupAdapter<String> adapter;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_viewgroupadapter);
    // Grab the view to bind the adapter to
    ViewGroup adapterGroup = (ViewGroup) findViewById(R.id.viewGroupAdapter_adapterLayout);

    // Create and bind an adapter which displays views representing strings
    adapter = new ViewGroupAdapter<String>(adapterGroup) {
      @Override
      protected View createView(String item, LayoutInflater inflater, ViewGroup root) {
        // Inflate a new view
        TextView text = (TextView) inflater.inflate(
            R.layout.simple_text_item_layout, root, false);
        // Simply set the text in a label
        text.setText(item);
        return text;
      }
    };
    
    // When an item is clicked in the adapter, remove it.
    adapter.setItemClickedListener(new ItemClickedListener<String>() {
      @Override
      public void onItemClicked(ViewGroupAdapter<String> adapter,
          String item, int index) {
        // Use removeAt to guarantee we remove the right index
        // adapter.remove will remove the first occurrence of the object
        adapter.removeAt(index);
      }
    });
    
    // Handle the add 1 button
    findViewById(R.id.add1Button).setOnClickListener(new OnClickListener() {  
      @Override
      public void onClick(View v) {
        adapter.add(getNextString());
      }
    });
    
    // Handle the add 5 button
    findViewById(R.id.add5Button).setOnClickListener(new OnClickListener() {
      @Override
      public void onClick(View v) {
        List<String> strings = new LinkedList<String>();
        for (int i = 0; i < 5; ++i) {
          strings.add(getNextString());
        }
        adapter.add(strings);
      }
    });
    
    // Handle the clear button
    findViewById(R.id.clearButton).setOnClickListener(new OnClickListener() {  
      @Override
      public void onClick(View v) {
        adapter.clear();
      }
    });
  }
  
  /**
   * @return The next string to display
   */
  private String getNextString() {
    return Integer.toString(++currentCount);
  }
}




Java Source Code List

com.raizlabs.baseutils.CompatibilityUtils.java
com.raizlabs.baseutils.IOUtils.java
com.raizlabs.baseutils.Logger.java
com.raizlabs.baseutils.Math.java
com.raizlabs.baseutils.StringUtils.java
com.raizlabs.baseutils.ThreadingUtils.java
com.raizlabs.baseutils.Wrapper.java
com.raizlabs.baseutils.examples.MainActivity.java
com.raizlabs.baseutils.examples.asyncdrawable.AsyncDrawableExampleActivity.java
com.raizlabs.baseutils.examples.asyncdrawable.AsyncDrawableListExampleActivity.java
com.raizlabs.baseutils.examples.simplegenericadapter.SimpleGenericAdapterExampleActivity.java
com.raizlabs.baseutils.examples.viewgroupadapter.ViewGroupAdapterExampleActivity.java
com.raizlabs.baseutils.examples.viewholderstrategy.SimpleViewHolderStrategyExampleActivity.java
com.raizlabs.collections.ListUtils.java
com.raizlabs.collections.MappableSet.java
com.raizlabs.collections.TransactionalHashSet.java
com.raizlabs.concurrent.BasePrioritizedRunnable.java
com.raizlabs.concurrent.ConcurrencyUtils.java
com.raizlabs.concurrent.PrioritizedRunnable.java
com.raizlabs.concurrent.Prioritized.java
com.raizlabs.content.sharing.SharingUtils.java
com.raizlabs.database.CursorIterable.java
com.raizlabs.database.CursorIterator.java
com.raizlabs.events.EventListener.java
com.raizlabs.events.Event.java
com.raizlabs.events.ProgressListener.java
com.raizlabs.events.SimpleEventListener.java
com.raizlabs.functions.Delegate.java
com.raizlabs.functions.Predicate.java
com.raizlabs.functions.Provider.java
com.raizlabs.graphics.ImageFactory.java
com.raizlabs.graphics.drawable.async.AsyncDrawableTask.java
com.raizlabs.graphics.drawable.async.AsyncDrawableUtils.java
com.raizlabs.graphics.drawable.async.AsyncDrawableWrapper.java
com.raizlabs.graphics.drawable.async.AsyncDrawable.java
com.raizlabs.graphics.drawable.async.BaseAsyncDrawableTask.java
com.raizlabs.imagecaching.ImageCache.java
com.raizlabs.imagecaching.PrefixedImageCacheAdapter.java
com.raizlabs.imagecaching.StubImageCache.java
com.raizlabs.json.JSONArrayParserDelegate.java
com.raizlabs.json.JSONHelper.java
com.raizlabs.synchronization.OneShotLock.java
com.raizlabs.tasks.RZAsyncTaskEvent.java
com.raizlabs.tasks.RZAsyncTaskListener.java
com.raizlabs.tasks.RZAsyncTask.java
com.raizlabs.util.observable.ObservableData.java
com.raizlabs.util.observable.ObservableListAdapter.java
com.raizlabs.util.observable.ObservableList.java
com.raizlabs.view.ViewCompatibility.java
com.raizlabs.view.animation.AnimationListenerWrapper.java
com.raizlabs.view.animation.RelativeLayoutParamsAnimation.java
com.raizlabs.view.animation.ResizeAnimation.java
com.raizlabs.widget.EvenLinearLayout.java
com.raizlabs.widget.ImageMixView.java
com.raizlabs.widget.SlideRevealLayout.java
com.raizlabs.widget.ViewUtils.java
com.raizlabs.widget.adapters.ListBasedAdapter.java
com.raizlabs.widget.adapters.SimpleGenericAdapter.java
com.raizlabs.widget.adapters.ViewGroupAdapter.java
com.raizlabs.widget.adapters.ViewHolderStrategyAdapter.java
com.raizlabs.widget.utils.SimpleViewHolderStrategy.java
com.raizlabs.widget.utils.ViewHolderStrategyConverter.java
com.raizlabs.widget.utils.ViewHolderStrategyUtils.java
com.raizlabs.widget.utils.ViewHolderStrategy.java