gpt4 book ai didi

datatable - Flutter DataTable - 点击行

转载 作者:IT王子 更新时间:2023-10-29 06:47:39 27 4
gpt4 key购买 nike

我正在使用 Flutter DataTables 来显示购物车中的商品列表。现在我想编辑任何选定行的数量。有没有办法获取用户点击的行信息?

以下是我的DataTable的完整代码:

class _DataTableSampleState extends State<DataTableSample> {

void _getSelectedRowInfo() {
print('Selected Item Row Name Here...')
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('DataTable Sample'),
),
body: Container(
child: DataTable(
onSelectAll: (b) {},
sortAscending: true,
columns: <DataColumn>[
DataColumn(
label: Text('Item'),
),
DataColumn(
label: Text('Price'),
),
],
rows: items
.map(
(itemRow) => DataRow(
cells: [
DataCell(
Text(itemRow.itemName),
showEditIcon: false,
placeholder: false,
),
DataCell(
Text(itemRow.itemPrice),
showEditIcon: true,
placeholder: false,
onTap: _getSelectedRowInfo,
),
],
),
)
.toList(),
),
),
);
}
}

class ItemInfo {
String itemName;
String itemPrice;

ItemInfo({
this.itemName,
this.itemPrice,
});
}

var items = <ItemInfo>[
ItemInfo(
itemName: 'Item A',
itemPrice: '250',
),
ItemInfo(
itemName: 'Item B',
itemPrice: '100',
),
ItemInfo(
itemName: 'Item C',
itemPrice: '150',
),
];

单击编辑图标时,将调用“_getSelectedRowInfo”方法。我想在此函数中获得选定/点击行的完整详细信息。

最佳答案

你可以使用onSelectChanged DataRow 的属性。

rows: items
.map(
(itemRow) => DataRow(
onSelectChanged: (bool selected) {
if (selected) {
log.add('row-selected: ${itemRow.index}');
}
},
cells: [
// ..
],
),

关于datatable - Flutter DataTable - 点击行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53190644/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com