[英]Flutter: update PaginatedDataTable from method in DataTableSource?
[英]how to clear DataTableSource for PaginatedDataTable in flutter?
我正在嘗試更新 flutter 中 PaginatedDataTable 中的記錄,但假設我有 5 條記錄,我現在更新記錄,它將顯示 10 條舊記錄、5 條舊記錄和無變化數據。
清除 PaginatedDataTable 的 DataTableSource(清除 DataCell)以用新的更新它們的最佳方法是什么? 這是 MySource 的聲明:
MySource mySource = new MySource(id, sub, c_date, m_date, status);
這是 DataTableSource 的 class:
class MySource extends DataTableSource {
List<String> value1;
List<String> value2;
List<String> value3;
List<String> value4;
List<String> value5;
String a;
String b;
MySource(this.value1, this.value2, this.value3, this.value4, this.value5) {
//print(value);
}
@override
DataRow getRow(int index) {
return DataRow.byIndex(
onSelectChanged: (changedvalue) {
print(value1[index].toString());
},
index: index,
cells: [
DataCell(Text(value1[index].toString())),
DataCell(Text(value2[index].toString())),
DataCell(Text(value3[index].toString())),
DataCell(Text(value4[index].toString())),
DataCell(m_table_icon(value5[index].toString())),
],
);
}
@override
// TODO: implement isRowCountApproximate
bool get isRowCountApproximate => false;
@override
// TODO: implement rowCount
int get rowCount => value1.length;
@override
// TODO: implement selectedRowCount
int get selectedRowCount => 0;
}
和 PaginatedDataTable 的這個小部件:
PaginatedDataTable(
showCheckboxColumn: false,
//header: Text('Header Text'),
rowsPerPage: 20,
columns: [
DataColumn(label: Text('ID')),
DataColumn(label: Text('SUB')),
DataColumn(
label: Text('Created_Date')),
DataColumn(
label: Text('M_Date')),
DataColumn(label: Text('Finish')),
],
從 php 服務器獲取數據:
Future get_table_info() async {
var output = await update_m_table(search_keyword);
id.clear();
sub.clear();
c_date.clear();
m_date.clear();
status.clear();
setState(() {
for (int i = 0; i < output.length; i++) {
id.add(((output[i].id)));
sub.add(((output[i].sub)));
c_date.add(((output[i].created_date)));
print((output[i].created_date));
m_date.add(((output[i].date)));
status.add(((output[i].status)));
}
});
}
我也需要這個,當我將鎖定在 json 數據形式 php 內時添加搜索欄。
這解決了這個問題:
output.clear();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.