previewScrollAwareFloatingActionBar function

  1. @Preview(name: 'ScrollAwareFloatingActionBar', group: 'Floating Action Bar', size: Size(420, 320))
Widget previewScrollAwareFloatingActionBar()

Implementation

@Preview(
  name: 'ScrollAwareFloatingActionBar',
  group: 'Floating Action Bar',
  size: Size(420, 320),
)
Widget previewScrollAwareFloatingActionBar() {
  const tabs = ['114-2', '114-1', '113-2', '113-1'];

  return WidgetPreviewFrame(
    child: SizedBox(
      width: 360,
      height: 280,
      child: DefaultTabController(
        length: tabs.length,
        child: ScrollAwareFloatingActionBar(
          floatingActionBarBuilder: (context, visible) => FloatingActionBar(
            visible: visible,
            actions: [
              FloatingActionBarMenuButton<String>(
                icon: Icons.more_vert_outlined,
                items: const [
                  PopupMenuItem(
                    value: 'refresh',
                    child: ListTile(
                      leading: Icon(Icons.refresh_outlined),
                      title: Text('Refresh'),
                    ),
                  ),
                  PopupMenuItem(
                    value: 'display',
                    child: ListTile(
                      leading: Icon(Icons.tune_outlined),
                      title: Text('Display options'),
                    ),
                  ),
                ],
                onSelected: (_) {},
              ),
            ],
            child: ChipTabSwitcher(
              tabs: tabs,
              padding: const .symmetric(horizontal: 12),
            ),
          ),
          child: ListView.builder(
            itemCount: 20,
            itemBuilder: (context, index) => ListTile(
              title: Text('Row $index'),
            ),
          ),
        ),
      ),
    ),
  );
}