import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatefulWidget { @override State createState() { return MyAppState(); } } class MyAppState extends State { List _fruits = ["Apple", "Banana", "Pineapple", "Mango", "Grapes"]; List> _dropDownMenuItems; String _selectedFruit; @override void initState() { _dropDownMenuItems = buildAndGetDropDownMenuItems(_fruits); _selectedFruit = _dropDownMenuItems[0].value; super.initState(); } List> buildAndGetDropDownMenuItems(List fruits) { List> items = List(); for (String fruit in fruits) { items.add(DropdownMenuItem(value: fruit, child: Text(fruit))); } return items; } void changedDropDownItem(String selectedFruit) { setState(() { _selectedFruit = selectedFruit; }); } @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( appBar: AppBar( title: Text("DropDown Button Example"), ), body: Container( child: Center( child: Column( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center, children: [ Text("Please choose a fruit: "), DropdownButton( value: _selectedFruit, items: _dropDownMenuItems, onChanged: changedDropDownItem, ) ], )), ), ), ); } }