Skip to content

PlaceHolderView sort, Swipe Stack Head Callback, Fix Expand ChildView Order

Compare
Choose a tag to compare
@janishar janishar released this 01 Dec 19:43

PlaceHolderView Sort

Now we can apply sort to the views added to the PlaceHolderView. This will refresh the views with new sort order.

Example: If the View Items added to the PlaceHolderView is of class ItemView, then we have to supply a Comparator that defines the comparison between the itemView objects. Here the itemView's title string is being compared for the sorting.

NOTE: Check item1 and item2 are of type ItemView for this example. This is required because any type of View Item class can be added into the PlaceHolderView

placeHolderView.sort(new Comparator<Object>() {
    @Override
    public int compare(Object item1, Object item2) {
        if (item1 instanceof ItemView && item2 instanceof ItemView) {
            ItemView view1 = (ItemView) item1;
            ItemView view2 = (ItemView) item2;
            return view1.getTitle().compareTo(view2.getTitle());
        }
        return 0;
    }
});

SwipeHead Callback

SwipePlaceHolderView will now provide SwipeHead annotation for callback when a card comes on top of the stack.

@SwipeHead
private void onSwipeHeadCard() {
    // do something when the card comes on the top
}

Example: In the below example link, the cards below the top card are blurred and when a card come on the top then it's blur removed.
Link: TinderCard

ExpandabePlaceHolderView Reverse Add Fix

The child views were getting added in reverse order and hence it is fixed now.