package com.chad.baserecyclerviewadapterhelper; import android.app.Activity; import android.os.Bundle; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.View; import android.widget.CompoundButton; import android.widget.ImageView; import android.widget.Toast; import com.chad.baserecyclerviewadapterhelper.adapter.AnimationAdapter; import com.chad.baserecyclerviewadapterhelper.animation.CustomAnimation; import com.chad.baserecyclerviewadapterhelper.entity.Status; import com.chad.library.adapter.base.BaseQuickAdapter; import com.jaredrummler.materialspinner.MaterialSpinner; import com.kyleduo.switchbutton.SwitchButton; /** * https://github.com/CymChad/BaseRecyclerViewAdapterHelper * <p> * modify by AllenCoder */ public class AnimationUseActivity extends Activity { private RecyclerView mRecyclerView; private AnimationAdapter mAnimationAdapter; private ImageView mImgBtn; private int mFirstPageItemCount = 3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_adapter_use); mRecyclerView = (RecyclerView) findViewById(R.id.rv_list); mRecyclerView.setHasFixedSize(true); mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); initAdapter(); initMenu(); initView(); } private void initView() { mImgBtn = (ImageView) findViewById(R.id.img_back); mImgBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(final View v) { finish(); } }); } private void initAdapter() { mAnimationAdapter = new AnimationAdapter(); mAnimationAdapter.openLoadAnimation(); mAnimationAdapter.setNotDoAnimationCount(mFirstPageItemCount); mAnimationAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { @Override public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { String content = null; Status status = (Status) adapter.getItem(position); switch (view.getId()) { case R.id.img: content = "img:" + status.getUserAvatar(); Toast.makeText(AnimationUseActivity.this, content, Toast.LENGTH_LONG).show(); break; case R.id.tweetName: content = "name:" + status.getUserName(); Toast.makeText(AnimationUseActivity.this, content, Toast.LENGTH_LONG).show(); break; case R.id.tweetText: content = "tweetText:" + status.getUserName(); Toast.makeText(AnimationUseActivity.this, content, Toast.LENGTH_LONG).show(); // you have set clickspan .so there should not solve any click event ,just empty break; } } }); mRecyclerView.setAdapter(mAnimationAdapter); } private void initMenu() { MaterialSpinner spinner = (MaterialSpinner) findViewById(R.id.spinner); spinner.setItems("AlphaIn", "ScaleIn", "SlideInBottom", "SlideInLeft", "SlideInRight", "Custom"); spinner.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener<String>() { @Override public void onItemSelected(MaterialSpinner view, int position, long id, String item) { switch (position) { case 0: mAnimationAdapter.openLoadAnimation(BaseQuickAdapter.ALPHAIN); break; case 1: mAnimationAdapter.openLoadAnimation(BaseQuickAdapter.SCALEIN); break; case 2: mAnimationAdapter.openLoadAnimation(BaseQuickAdapter.SLIDEIN_BOTTOM); break; case 3: mAnimationAdapter.openLoadAnimation(BaseQuickAdapter.SLIDEIN_LEFT); break; case 4: mAnimationAdapter.openLoadAnimation(BaseQuickAdapter.SLIDEIN_RIGHT); break; case 5: mAnimationAdapter.openLoadAnimation(new CustomAnimation()); break; default: break; } mRecyclerView.setAdapter(mAnimationAdapter); } }); mAnimationAdapter.isFirstOnly(false);//init firstOnly state SwitchButton switchButton = (SwitchButton) findViewById(R.id.switch_button); switchButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(final CompoundButton buttonView, final boolean isChecked) { if (isChecked) { mAnimationAdapter.isFirstOnly(true); } else { mAnimationAdapter.isFirstOnly(false); } mAnimationAdapter.notifyDataSetChanged(); } }); } }