// 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/cupertino.dart'; /// Flutter code sample for [CupertinoSearchTextField]. void main() => runApp(const SearchTextFieldApp()); class SearchTextFieldApp extends StatelessWidget { const SearchTextFieldApp({super.key}); @override Widget build(BuildContext context) { return const CupertinoApp( theme: CupertinoThemeData(brightness: Brightness.light), home: SearchTextFieldExample(), ); } } class SearchTextFieldExample extends StatefulWidget { const SearchTextFieldExample({super.key}); @override State<SearchTextFieldExample> createState() => _SearchTextFieldExampleState(); } class _SearchTextFieldExampleState extends State<SearchTextFieldExample> { String text = ''; @override Widget build(BuildContext context) { return CupertinoPageScaffold( navigationBar: const CupertinoNavigationBar( middle: Text('CupertinoSearchTextField Sample'), ), child: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Text(text), Padding( padding: const EdgeInsets.all(16.0), child: SearchTextField( fieldValue: (String value) { setState(() { text = value; }); }, ), ), ], ), ), ); } } class SearchTextField extends StatelessWidget { const SearchTextField({ super.key, required this.fieldValue, }); final ValueChanged<String> fieldValue; @override Widget build(BuildContext context) { return CupertinoSearchTextField( onChanged: (String value) { fieldValue('The text has changed to: $value'); }, onSubmitted: (String value) { fieldValue('Submitted text: $value'); }, ); } }