Flutter › Flutter Material Design Components

How do Card and ListTile work together as commonly used Material widgets specifically for displaying a clean, well structured, scrollable list of individual items, such as a list of orders or messages?

Intermediate

Answer

Card provides a widget with a subtle shadow and appropriately rounded corners specifically intended to help visually group and separate a distinct piece of related content from its surrounding overall background, while ListTile provides a genuinely convenient, ready made, and consistent layout structure specifically for a typical single list row, including dedicated leading and trailing positions for icons along with clearly organized title and subtitle text areas, and combining Card together with ListTile is an extremely commonly used pattern for displaying a clean, consistently structured scrollable list of individual items throughout a great many typical Material Design styled apps.
Card(
  child: ListTile(
    leading: Icon(Icons.shopping_bag),
    title: Text('Order #1234'),
    subtitle: Text('Delivered on May 3rd'),
    trailing: Icon(Icons.chevron_right),
  ),
)
Real-world example An order history screen displays each individual past order using a Card wrapped around a ListTile, consistently showing a relevant leading icon, the order number as its title, and the actual delivery date as its subtitle, in a clean, well structured, easily scannable format.

Common follow-ups: How do you properly make an entire ListTile tappable to navigate to that item's own individual detail screen?;What is the specific difference between using ListTile and simply manually building your own genuinely custom row layout from scratch?