Я работаю над выпадающим меню.В пункте меню есть строка, в которой я отображаю значок слева, а справа - текст.
Проблема:
Когда я выбираю элемент из выпадающего менюпоказывать значок и текст одновременно, но мне нужно показать только текст. При отладке я распечатываю значение, на котором отображается только правильный текст.
Примечание. Если удалить значок из строки, он будет работать нормально.
Консоль отладки
Элементы меню
Послевыберите элемент, значок и текст отображаются, но я хочу показать только текст
Ниже приведен код:
class _MyHomePageState extends State<MyHomePage> {
String _mySelection;
List<Map> _myJson = [
{"id":1,"name":"All List"},
{"id":2,"name":"Default"},
{"id":3,"name":"Personal"},
{"id":4,"name":"Shopping"},
{"id":5,"name":"Wishlist"},
{"id":6,"name":"Work"},
{"id":7,"name":"Finished"}];
@override
void initState(){
super.initState();
}
Icon actionIcon = Icon(Icons.search);
Widget appBarTitle = Text("AppBar Title");
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Theme(
data: Theme.of(context).copyWith(
canvasColor: Theme.of(context).primaryColor
),
child: DropdownButton(
items: _myJson.map((item) {
return DropdownMenuItem(
child: Row(
children: <Widget>[
Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Icon(Icons.menu,size: 13),
),
Text(
item['name'],
style: TextStyle(color: Colors.white, fontSize: 17,)
),
],
),
value: item['name']
);
}).toList(),
onChanged: (newvalue) {
setState(() {
_mySelection = newvalue;
print(_mySelection);
});
},
hint: Text(_myJson[0]["name"],style: TextStyle(color: Colors.white,fontSize: 17)),
value:_mySelection,
), // Your Dropdown Code Here,
),
actions: <Widget>[
IconButton(
icon: Icon(Icons.search, color: Colors.white),onPressed:null,
),]
),
body: null,
);
}//end of Widget build
}//end of _MyHomePageState