Я создал настраиваемый ListView и хочу вложить его в свое раскрывающееся меню в качестве элемента. В настоящее время я получаю сообщение «NoSuchMethodError: метод« карта »был вызван с нулевым значением». Кажется, я не могу это правильно отобразить. Я новичок во Flutter.
class TheDetails extends StatelessWidget {
TheDetails({Key key}) : super(key: key);
@override
Widget build(BuildContext context) {
return ListView(
padding: const EdgeInsets.all(8.0),
itemExtent: 70.0,
children: <CustomListItem>[
CustomListItem(
accName: 'Salary Account',
accNumber: 'Savings XXX-X-XX563-9',
accBalance: '56,302.56',
),
CustomListItem(
accName: 'Salary Account 2',
accNumber: 'Savings XXX-X-XX563-9',
accBalance: '89,302.56',
),
CustomListItem(
accName: 'Vayu Meetang',
accNumber: 'Savings XXX-X-XX563-9',
accBalance: '100,505.56',
),
],
);
}
}
class SelectAccount extends StatefulWidget {
@override
_SelectAccountState createState() => _SelectAccountState();
}
class _SelectAccountState extends State<SelectAccount> {
var dropdownValue;
var accountNames;
@override
Widget build(BuildContext context) {
return Container(
constraints: BoxConstraints.expand(width: 375.0, height: 120.0),
decoration: BoxDecoration(
color: Colors.white,
border: Border.all(color: Colors.grey),
borderRadius: BorderRadius.circular(20.0),
),
child: DropdownButton<String>(
value: dropdownValue,
underline: Container(
height: 2,
),
icon: Icon(Icons.keyboard_arrow_down,
color: Colors.blue[500],),
onChanged: (String newValue) {
setState(() {
dropdownValue = newValue;
});
},
items: accountNames.map((item){
return DropdownMenuItem(
value: item,
child: TheDetails(),
);
}).toList(),
),
);
}
}