listBuilder<T> static method

Widget listBuilder<T>({
  1. required SimpleGetxController<List<T>> dataController,
  2. required ChildItemBuilder<T> childItemBuilder,
  3. OnItemClick<T>? onItemClick,
  4. OnItemDoubleClick<T>? onItemDoubleClick,
  5. OnItemLongClick<T>? onItemLongClick,
  6. ScrollController? scrollController,
  7. EdgeInsetsGeometry? padding,
  8. ScrollPhysics? physics,
  9. bool shrinkWrap = false,
})

快速构建ListView

Implementation

static Widget listBuilder<T>({
  required SimpleGetxController<List<T>> dataController,
  required ChildItemBuilder<T> childItemBuilder,
  OnItemClick<T>? onItemClick,
  OnItemDoubleClick<T>? onItemDoubleClick,
  OnItemLongClick<T>? onItemLongClick,
  ScrollController? scrollController,
  EdgeInsetsGeometry? padding,
  ScrollPhysics? physics,
  bool shrinkWrap = false,
}) {
  return GetBuilderUtil.builder(
      (controller) => ListView.builder(
          itemCount: controller.data?.length ?? 0,
          controller: scrollController,
          physics: physics,
          padding: padding ?? const EdgeInsets.all(0),
          shrinkWrap: shrinkWrap,
          itemBuilder: (context, index) {
            T item = controller.dataNotNull[index];
            return BaseItemWidget(
              childItemBuilder: childItemBuilder,
              item: item,
              index: index,
              onItemClick: onItemClick,
              onItemDoubleClick: onItemDoubleClick,
              onItemLongClick: onItemLongClick,
            );
          }),
      init: dataController);
}