[英]I want to show filter list in a container but its opening as a new screen in flutter. how i can do it?
此代码正在运行,但我没有得到 output 作为想要的,我想在容器中显示此屏幕但它不工作。 它不是在容器中打开,而是直接作为不同的页面打开。
我在此代码中使用 flutter filter_list: ^1.0.2插件。
但我想在同一页面的容器中显示这个搜索栏和一个列表。
建议我做一些我想做的事情。
List<SelectProjectData?> _selectProjectData = [];
openFilterDelegate() async {
await FilterListDelegate.show<SelectProjectData?>(
context: context,
list: _selectProjectData,
selectedListData: _selectedProjectData,
onItemSearch: (user, query) {
return user!.projectName!.toLowerCase().contains(query.toLowerCase());
},
tileLabel: (user) => user!.projectName,
emptySearchChild: const Center(child: Text('Data not found')),
// enableOnlySingleSelection: true,
searchFieldHint: 'Search Here..',
onApplyButtonClick: (list) {
setState(() {
_selectedProjectData = list!;
});
},
);
}
尝试在列中调用它:- 在这里你可以找到代码
Container(
margin: EdgeInsets.all(10),
padding: EdgeInsets.all(20),
color: AppColor.WHITE,
child:
Column(
children: [
openFilterDelegate(),
],
),
);
最终结果是这样的:-
基于https://pub.dev/packages/filter_list ,您想使用FilterWidget
而不是FilterDelegate
。 FilterDelegate
每次都会打开一个新的 window。 FilterWidget
是一个小部件,您可以像任何其他小部件一样将其放入容器中。
Container(
margin: EdgeInsets.all(10),
padding: EdgeInsets.all(20),
color: AppColor.WHITE,
child:
Column(
children: [
FilterWidget(
<set up widget here>
),
],
),
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.