package com.cheng.animationstudy.customview.bagrefresh;
import android.support.v7.widget.RecyclerView;
import com.cheng.animationstudy.R;
import java.util.ArrayList;
import java.util.List;
import cn.bingoogolapple.androidcommon.adapter.BGARecyclerViewAdapter;
import cn.bingoogolapple.androidcommon.adapter.BGAViewHolderHelper;
import cn.bingoogolapple.swipeitemlayout.BGASwipeItemLayout;
/**
* 作者:王浩 邮件:bingoogolapple@gmail.com
* 创建时间:15/5/22 16:31
* 描述:
*/
public class SwipeRecyclerViewAdapter extends BGARecyclerViewAdapter<RefreshModel> {
/**
* 当前处于打开状态的item
*/
private List<BGASwipeItemLayout> mOpenedSil = new ArrayList<>();
public SwipeRecyclerViewAdapter(RecyclerView recyclerView) {
super(recyclerView, R.layout.item_swipe);
}
@Override
public void setItemChildListener(BGAViewHolderHelper viewHolderHelper) {
BGASwipeItemLayout swipeItemLayout = viewHolderHelper.getView(R.id.sil_item_swipe_root);
swipeItemLayout.setDelegate(new BGASwipeItemLayout.BGASwipeItemLayoutDelegate() {
@Override
public void onBGASwipeItemLayoutOpened(BGASwipeItemLayout swipeItemLayout) {
closeOpenedSwipeItemLayoutWithAnim();
mOpenedSil.add(swipeItemLayout);
}
@Override
public void onBGASwipeItemLayoutClosed(BGASwipeItemLayout swipeItemLayout) {
mOpenedSil.remove(swipeItemLayout);
}
@Override
public void onBGASwipeItemLayoutStartOpen(BGASwipeItemLayout swipeItemLayout) {
closeOpenedSwipeItemLayoutWithAnim();
}
});
viewHolderHelper.setItemChildClickListener(R.id.tv_item_swipe_delete);
viewHolderHelper.setItemChildLongClickListener(R.id.tv_item_swipe_delete);
}
@Override
public void fillData(BGAViewHolderHelper viewHolderHelper, int position, RefreshModel model) {
viewHolderHelper.setText(R.id.tv_item_swipe_title, model.title).setText(R.id.tv_item_swipe_detail, model.detail).setText(R.id.et_item_swipe_title, model.title);
}
public void closeOpenedSwipeItemLayoutWithAnim() {
for (BGASwipeItemLayout sil : mOpenedSil) {
sil.closeWithAnim();
}
mOpenedSil.clear();
}
}