Flutter Settings List with Icon Rows

A settings list with leading icon tiles, titles, subtitles, and trailing chevrons. A preferences screen pattern built with Wind UI utility classes and dark mode.

Anılcan Çakır by Anılcan Çakır 24 views 0 stars 2 weeks ago Rev 2
Flutter Settings List with Icon Rows preview
main.dart
WDiv(
  className: 'mx-auto max-w-md flex flex-col rounded-2xl border bg-white border-gray-200 shadow-sm overflow-hidden dark:bg-gray-900 dark:border-gray-800',
  children: [
    WDiv(
      className: 'flex flex-row items-center gap-4 p-4 border-b border-gray-100 dark:border-gray-800',
      children: [
        WDiv(
          className: 'flex items-center justify-center w-10 h-10 rounded-xl bg-indigo-100 dark:bg-indigo-900',
          child: WIcon(
            Icons.person,
            className: 'text-indigo-600 text-lg dark:text-indigo-300'
          )
        ),
        WDiv(
          className: 'flex-1 flex flex-col',
          children: [
            WText(
              'Account',
              className: 'text-sm font-semibold text-gray-900 dark:text-white'
            ),
            WText(
              'Profile, email, password',
              className: 'text-xs text-gray-500 dark:text-gray-400'
            )
          ]
        ),
        WIcon(
          Icons.chevron_right,
          className: 'text-gray-400 text-lg dark:text-gray-500'
        ),
      ],
    ),
    WDiv(
      className: 'flex flex-row items-center gap-4 p-4 border-b border-gray-100 dark:border-gray-800',
      children: [
        WDiv(
          className: 'flex items-center justify-center w-10 h-10 rounded-xl bg-amber-100 dark:bg-amber-900',
          child: WIcon(
            Icons.notifications,
            className: 'text-amber-600 text-lg dark:text-amber-300'
          )
        ),
        WDiv(
          className: 'flex-1 flex flex-col',
          children: [
            WText(
              'Notifications',
              className: 'text-sm font-semibold text-gray-900 dark:text-white'
            ),
            WText(
              'Push, email, in-app',
              className: 'text-xs text-gray-500 dark:text-gray-400'
            )
          ]
        ),
        WIcon(
          Icons.chevron_right,
          className: 'text-gray-400 text-lg dark:text-gray-500'
        ),
      ],
    ),
    WDiv(
      className: 'flex flex-row items-center gap-4 p-4',
      children: [
        WDiv(
          className: 'flex items-center justify-center w-10 h-10 rounded-xl bg-emerald-100 dark:bg-emerald-900',
          child: WIcon(
            Icons.security,
            className: 'text-emerald-600 text-lg dark:text-emerald-300'
          )
        ),
        WDiv(
          className: 'flex-1 flex flex-col',
          children: [
            WText(
              'Privacy',
              className: 'text-sm font-semibold text-gray-900 dark:text-white'
            ),
            WText(
              'Permissions, data, sessions',
              className: 'text-xs text-gray-500 dark:text-gray-400'
            )
          ]
        ),
        WIcon(
          Icons.chevron_right,
          className: 'text-gray-400 text-lg dark:text-gray-500'
        ),
      ],
    ),
  ],
)
Stats
Views
24
Stars
0
Revisions
2
Size
2,911 chars
Created
Jun 9, 2026