package com.smartandroid.sa.drag; import android.content.Context; import android.view.View; import android.widget.Checkable; /** * Lightweight ViewGroup that wraps list items obtained from user's ListAdapter. * ItemView expects a single child that has a definite height (i.e. the child's * layout height is not MATCH_PARENT). The width of ItemView will always match * the width of its child (that is, the width MeasureSpec given to ItemView is * passed directly to the child, and the ItemView measured width is set to the * child's measured width). The height of ItemView can be anything; the * * * The purpose of this class is to optimize slide shuffle animations. */ public class DragSortItemViewCheckable extends DragSortItemView implements Checkable { public DragSortItemViewCheckable(Context context) { super(context); } @Override public boolean isChecked() { View child = getChildAt(0); if (child instanceof Checkable) return ((Checkable) child).isChecked(); else return false; } @Override public void setChecked(boolean checked) { View child = getChildAt(0); if (child instanceof Checkable) ((Checkable) child).setChecked(checked); } @Override public void toggle() { View child = getChildAt(0); if (child instanceof Checkable) ((Checkable) child).toggle(); } }