removeItem method

void removeItem(
  1. T item,
  2. Widget builder(
    1. BuildContext,
    2. Animation<double>
    )
)

Implementation

void removeItem(
  T item,
  Widget Function(BuildContext, Animation<double>) builder,
) {
  final itemIndex = _listItemNotifier.listItem.indexOf(item);

  if (itemIndex == -1) return;

  timerList.removeAt(itemIndex);
  _listItemNotifier.remove(itemIndex);

  _animatedListKey.currentState?.removeItem(
    itemIndex,
    (context, animation) {
      void handler(status) {
        if (status == AnimationStatus.dismissed ||
            status == AnimationStatus.completed) {
          animation.removeStatusListener(handler);
          listItemChangeListener();
        }
      }

      animation.addStatusListener(handler);

      return builder(context, animation);
    },
  );
}