我想使用可扩展的 - ExpandablePanel。问题是当第二个 ExpandablePanel 打开时如何关闭第一个 ExpandablePanel?我尝试使用controller.value,但找不到类似actions 或onChange 的东西。这个怎么做?
ExpandablePanel(
controller: categoryController,
iconPlacement: ExpandablePanelIconPlacement.right,
header: Container(
margin: EdgeInsets.only(left: 40.0),
child: Text(
'Category',
style: TextStyle(
fontSize: 21.0, fontWeight: FontWeight.bold),
textAlign: TextAlign.center,
)),
expanded: Container(
child: Icon(Icons.close)),
tapHeaderToExpand: true,
hasIcon: true,
),
ExpandablePanel(
controller: subCategoryController,
iconPlacement: ExpandablePanelIconPlacement.right,
header: Container(
margin: EdgeInsets.only(left: 40.0),
child: Text(
'SubCategory',
style: TextStyle(
fontSize: 21.0, fontWeight: FontWeight.bold),
textAlign: TextAlign.center,
)),
expanded: Container(
child: Icon(Icons.close)),
tapHeaderToExpand: true,
hasIcon: true,
),
Run Code Online (Sandbox Code Playgroud)
这可能是最简单的解决方案。
categoryController.addListener((){
if(categoryController.value)sexController.value=false;
});
sexController.addListener((){
if(sexController.value)categoryController.value=false;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4500 次 |
| 最近记录: |