1-) FLUTTER - Searchable Dropdown Aranabilir Combobox kullanımı
kaynak : https://pub.dev/packages/dropdown_button2
flutter pub add dropdown_button2
|
|
final List<String> items = [ 'A_Item1', 'A_Item2', 'A_Item3', 'A_Item4', 'B_Item1', 'B_Item2', 'B_Item3', 'B_Item4', ];
String? selectedValue; final TextEditingController textEditingController = TextEditingController();
@override void dispose() { textEditingController.dispose(); super.dispose(); }
String getTurkish(String text) { text = text.replaceAll("ç", "c");
@override Widget build(BuildContext context) { return Scaffold( body: Center( child: DropdownButtonHideUnderline( child: DropdownButton2( isExpanded: true, hint: Text( 'Select Item', style: TextStyle( fontSize: 14, color: Theme.of(context).hintColor, ), ), items: items .map((item) => DropdownMenuItem<String>( value: item, child: Text( item, style: const TextStyle( fontSize: 14, ), ), )) .toList(), value: selectedValue, onChanged: (value) { setState(() { selectedValue = value as String; }); }, buttonHeight: 40, buttonWidth: 200, itemHeight: 40, dropdownMaxHeight: 200, searchController: textEditingController, searchInnerWidget: Padding( padding: const EdgeInsets.only( top: 8, bottom: 4, right: 8, left: 8, ), child: TextFormField( controller: textEditingController, decoration: InputDecoration( isDense: true, contentPadding: const EdgeInsets.symmetric( horizontal: 10, vertical: 8, ), hintText: 'Search for an item...', hintStyle: const TextStyle(fontSize: 12), border: OutlineInputBorder( borderRadius: BorderRadius.circular(8), ), ), ), ), searchMatchFn: (item, searchValue) { //This to clear the search value when you close the menu onMenuStateChange: (isOpen) { if (!isOpen) { textEditingController.clear(); } }, ), ), ), ); }
|
2-) Hazır widget olarak kullanımı
1. dropdownr.dart |
import 'package:dropdown_button2/dropdown_button2.dart'; |
2. kullanımı |
'A_Item1', 'A_Item2', 'A_Item3', 'A_Item4', 'B_Item1', 'B_Item2', 'B_Item3', 'B_Item4',
String secilenBelgeTip="";
|