Android Open Source - inside-list-view-talk View Holder Adapter Animated






From Project

Back to project page inside-list-view-talk.

License

The source code is released under:

MIT License

If you think the Android project inside-list-view-talk 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.flipper.example.insidelist.adapter;
/*from   w  w  w .  j a  va2  s  .  c o  m*/
import android.content.Context;
import android.util.DisplayMetrics;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import com.flipper.example.insidelist.R;
import com.flipper.example.insidelist.model.DataModel;
import com.flipper.example.insidelist.rendermodel.RenderAnimated;
import com.flipper.example.insidelist.rendermodel.RenderBase;
import com.flipper.example.insidelist.rendermodel.RenderDebug;

import java.util.List;

/**
 * @author: Fernando Cejas <fcejas@gmail.com>
 * android10.org
 */
public class ViewHolderAdapterAnimated extends BaseInsideAdapter {

  private final DisplayMetrics metrics;

  //Animation mode
  private int mode = 1;

  public ViewHolderAdapterAnimated(Context context, List<DataModel> values, DisplayMetrics metrics) {
    super(context, values);
    this.metrics = metrics;
  }

  public View getView(int position, View convertView, ViewGroup parent) {

        long timeStart = System.nanoTime();

        DataModel data = (DataModel) getItem(position);

        //we set null to this one for not recycle
        RenderBase render = renderBuilder.obtainVideoRender(data, convertView, parent);

        //set debug info
        RenderDebug renderDebug = (RenderDebug) render;
        if (renderDebug.isNew()) {
            renderDebug.setId(contRemake);
            contRemake++;
        }

        //provide animate info
        ((RenderAnimated)render).setMetrics(metrics);
        ((RenderAnimated)render).setAnimationMode(mode);

        convertView = render.renderView(context, data);

        //set Debug info
        renderDebug.setOldPosition(position);


        long timeEnd = System.nanoTime();

        renderDebug.setTotalTime((timeEnd - timeStart) / 1000);

        renderBuilder.notifyTotalRenderTime(timeEnd - timeStart);

        return convertView;
  }

    public void setAnimationMode(int animationMode) {
        this.mode = animationMode;
    }
}




Java Source Code List

com.flipper.example.insidelist.activity.InsideBaseListActivity.java
com.flipper.example.insidelist.activity.InsideListViewAnimatedItemsTransient.java
com.flipper.example.insidelist.activity.InsideListViewAnimatedItems.java
com.flipper.example.insidelist.activity.InsideMainActivity.java
com.flipper.example.insidelist.activity.NoRecycleActivity.java
com.flipper.example.insidelist.activity.RecicleBitmapActivity.java
com.flipper.example.insidelist.activity.RecycleActivity.java
com.flipper.example.insidelist.activity.ViewHolderActivity.java
com.flipper.example.insidelist.adapter.BaseInsideAdapter.java
com.flipper.example.insidelist.adapter.DebugAdapter.java
com.flipper.example.insidelist.adapter.OptionsAdapter.java
com.flipper.example.insidelist.adapter.RecicleBitmapAdapter.java
com.flipper.example.insidelist.adapter.ViewHolderAdapterAnimated.java
com.flipper.example.insidelist.builder.RenderBuilder.java
com.flipper.example.insidelist.component.DebugListView.java
com.flipper.example.insidelist.model.DataModel.java
com.flipper.example.insidelist.model.RenderOptionData.java
com.flipper.example.insidelist.model.RenderViewData.java
com.flipper.example.insidelist.rendermodel.GeneralInfoListener.java
com.flipper.example.insidelist.rendermodel.RenderAnimated.java
com.flipper.example.insidelist.rendermodel.RenderBase.java
com.flipper.example.insidelist.rendermodel.RenderBitmapCache.java
com.flipper.example.insidelist.rendermodel.RenderDebug.java
com.flipper.example.insidelist.rendermodel.RenderOptionView.java