Я пытаюсь передать идентификатор элемента списка на другую страницу, чтобы он мог заполнить список элементами, на которые ссылается этот идентификатор:
return SideHeaderListView(
itemCount: order.length,
itemExtend: 230.0,
headerBuilder: (BuildContext context, index) {
return new SizedBox(
child: Text(order[index]['Month'],
style: TextStyle(
color: Colors.green,
fontWeight: FontWeight.bold,
fontSize: 30.0),),);
},
hasSameHeader: (int a, int b) {
return order[a]['Month'] ==
order[b]['Month'];
},
itemBuilder: (BuildContext context, index) {
String value;
return new GestureDetector(
//onLongPress: _showPopupMenu(),
onTap: () {
Navigator.push(context, MaterialPageRoute(
builder: (context) =>
MyItemList(orders: order[index],)
));
},
Это код, который передает идентификатор и вставляет идентификатор в таблице:
class MyItemList extends StatelessWidget{
final Map<String, dynamic> orders;
// final Items items;
MyItemList({this.orders});
}
FlatButton(
color: Colors.lightGreen,
child: Text('ADD',style: TextStyle(color: Colors.white),),
onPressed: () async {
OrderProvider.insertItem({
'ref':MyItemList().orders,
'Quantity': _quantityController.text,
'Unit': getDropDownItem().toString(),
'TypeOfProduct': _typeController.text,
'UnitPrice':_unitpriceController.text,
'TotalPrice':getTotalPrice()
});
Это мой метод класса провайдера:
return await db.rawQuery(
"select * from Items where ref = ${MyItemList(orders: id,)}",);
}