Skip to content

List Item Group

A ListItemGroup wraps multiple rows in a single bordered card with hairline dividers between them. Use it for “button section” patterns where several actions share one card — for example, a sheet offering “Take photo” and “Upload from camera roll”.

Pass standard ListItems as children — the group provides the card chrome (background, border, rounded corners). Using ListItem.card children would produce double chrome.

A two-row group of tappable actions.

ListItemGroup(
children: [
ListItem(
leading: Icon(PrimeIcons.cameraOutline),
title: Text('Take and upload image'),
onPressed: () {},
),
ListItem(
leading: Icon(PrimeIcons.upload),
title: Text('Upload images from camera roll'),
onPressed: () {},
),
],
)

Each row can include a trailing widget — useful for navigation chevrons.

ListItemGroup(
children: [
ListItem(
leading: Icon(PrimeIcons.cog),
title: Text('Settings'),
trailing: Icon(PrimeIcons.chevronRight),
onPressed: () {},
),
ListItem(
leading: Icon(PrimeIcons.accountGroupOutline),
title: Text('Team'),
trailing: Icon(PrimeIcons.chevronRight),
onPressed: () {},
),
ListItem(
leading: Icon(PrimeIcons.article),
title: Text('Documents'),
trailing: Icon(PrimeIcons.chevronRight),
onPressed: () {},
),
],
)