Skip to content

Instantly share code, notes, and snippets.

@thiagocarvalhodev
Created September 4, 2020 22:11
Show Gist options
  • Save thiagocarvalhodev/2edd69c247674252d21c515f6dfa9456 to your computer and use it in GitHub Desktop.
Save thiagocarvalhodev/2edd69c247674252d21c515f6dfa9456 to your computer and use it in GitHub Desktop.
import 'package:flutter/material.dart'; import 'package:zera/src/common/all.dart'; import 'package:zera/src/common/theme_loader.dart'; import 'package:zera/src/widgets/bottom_sheet_list_item/bottom_sheet_list_item_theme.dart'; class ZeraBottomSheetListItem extends StatelessWidget with ThemeLoader { final Key key; final ZeraBottomSheetListItemStyle style; final ZeraBottomSheetListItemTheme theme; final List models; final Widget Function(String) builder; final Function onPressed; final EdgeInsets padding; final bool shrinkWrap; final ScrollController controller; final double height; // TODO: IMplementar tipo genérico final Function(String, int) onTap; ZeraBottomSheetListItem( {this.key, this.theme, this.style, @required this.models, @required this.builder, this.onPressed, this.padding, this.shrinkWrap = false, this.controller, this.onTap, this.height}) : super(key: key); @override Widget build(BuildContext context) { final theme = loadTheme(context); return Container( height: height, child: ListView.builder( controller: controller ?? ScrollController(), padding: padding ?? EdgeInsets.all(kComponentSpacerL), shrinkWrap: shrinkWrap, itemCount: models.length, itemBuilder: (context, index) => InkWell( onTap: () => onTap(models[index], index), child: builder(models[index]))), ); } }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment