// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; /// Flutter code sample for [SearchAnchor]. void main() => runApp(const SearchBarApp()); class SearchBarApp extends StatefulWidget { const SearchBarApp({super.key}); @override State<SearchBarApp> createState() => _SearchBarAppState(); } class _SearchBarAppState extends State<SearchBarApp> { final SearchController controller = SearchController(); @override Widget build(BuildContext context) { final ThemeData themeData = ThemeData(useMaterial3: true); return MaterialApp( theme: themeData, home: Scaffold( appBar: AppBar(title: const Text('Search Anchor Sample')), body: Column( children: <Widget>[ SearchAnchor( searchController: controller, builder: (BuildContext context, SearchController controller) { return IconButton( icon: const Icon(Icons.search), onPressed: () { controller.openView(); }, ); }, suggestionsBuilder: (BuildContext context, SearchController controller) { return List<ListTile>.generate(5, (int index) { final String item = 'item $index'; return ListTile( title: Text(item), onTap: () { setState(() { controller.closeView(item); }); }, ); }); }), Center( child: controller.text.isEmpty ? const Text('No item selected') : Text('Selected item: ${controller.value.text}'), ), ], ), ), ); } }