Skip to content

Instantly share code, notes, and snippets.

@djandreski
Created January 22, 2015 08:41
Show Gist options
  • Save djandreski/a7e17af830d56c2f0ba6 to your computer and use it in GitHub Desktop.
Save djandreski/a7e17af830d56c2f0ba6 to your computer and use it in GitHub Desktop.
package me.jadi.timetracker.components;
import android.support.v7.widget.RecyclerView;
import android.view.ViewGroup;
import com.daimajia.swipe.SwipeLayout;
import com.daimajia.swipe.implments.SwipeItemMangerImpl;
import com.daimajia.swipe.interfaces.SwipeAdapterInterface;
import com.daimajia.swipe.interfaces.SwipeItemMangerInterface;
import java.util.List;
/**
* Created by Dragan Jandreski on 20.01.2015.
*/
public abstract class RecyclerSwipeAdapter<VH extends RecyclerView.ViewHolder>
extends RecyclerView.Adapter<VH>
implements SwipeItemMangerInterface, SwipeAdapterInterface {
private RecyclerSwipeItemMangerImpl<VH> mItemManger = new RecyclerSwipeItemMangerImpl<VH>(this);
private boolean isInitialized = false;
@Override
public abstract VH onCreateViewHolder(ViewGroup parent, int viewType);
@Override
public void onBindViewHolder(VH holder, int position){
if(!isInitialized)
mItemManger.initialize(holder.itemView, position);
else
mItemManger.updateConvertView(holder.itemView, position);
}
@Override
public abstract int getItemCount();
@Override
public abstract int getSwipeLayoutResourceId(int i);
@Override
public void openItem(int position) {
mItemManger.openItem(position);
}
@Override
public void closeItem(int position) {
mItemManger.closeItem(position);
}
@Override
public void closeAllExcept(SwipeLayout layout) {
mItemManger.closeAllExcept(layout);
}
@Override
public List<Integer> getOpenItems() {
return mItemManger.getOpenItems();
}
@Override
public List<SwipeLayout> getOpenLayouts() {
return mItemManger.getOpenLayouts();
}
@Override
public void removeShownLayouts(SwipeLayout layout) {
mItemManger.removeShownLayouts(layout);
}
@Override
public boolean isOpen(int position) {
return mItemManger.isOpen(position);
}
@Override
public SwipeItemMangerImpl.Mode getMode() {
return mItemManger.getMode();
}
@Override
public void setMode(SwipeItemMangerImpl.Mode mode) {
mItemManger.setMode(mode);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment