listView<T> static method
Widget
listView<
T>( - BuildContext context, {
- required List<T> items,
- required Widget widgetBuilder(
- T item
),
- String? msgOnEmpty,
- String? title,
- bool addDivider = true,
- bool startWithDivider = true,
- double gap = 0,
- bool shrinkWrap = false,
- Color dividerColor = Colors.grey,
- Widget? titleWidget,
})
Implementation
@Deprecated('use CoolList')
static Widget listView<T>(BuildContext context, {required List<T> items,
required Widget Function(T item) widgetBuilder,
String? msgOnEmpty, String? title, bool addDivider = true,
bool startWithDivider = true, double gap = 0, bool shrinkWrap = false, Color dividerColor = Colors.grey,
Widget? titleWidget})
{
msgOnEmpty = msgOnEmpty ?? 'Empty List';
if (items.isEmpty) {
return Center(child: Text(msgOnEmpty));
}
Widget interleaver = addDivider
? Divider(thickness: 0, height: 1, color: dividerColor)
: SizedBox(height: gap);
Widget child;
child = ListView(
padding: EdgeInsets.zero,
shrinkWrap: shrinkWrap,
children: buildAndJoinWidgets(
title: titleWidget,
items: items,
widgetBuilder: widgetBuilder,
interleaved: interleaver,
startWithInterleaver: startWithDivider
)
); //.onRoundedWhiteContainer();
if (title == null || title.isEmpty) {
return child;
}
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Text(title, style: Theme.of(context).textTheme.titleLarge).paddingHorizontal(10),
const SizedBox(height: 10),
child.expanded()
]
);
}