import 'package:flutter/material.dart'; class LearnExpansionPanelList extends StatefulWidget{ @override State<StatefulWidget> createState() { return new _LearnExpansionPanelList(); } } class _LearnExpansionPanelList extends State<LearnExpansionPanelList>{ var currentPanelIndex=-1;//設置-1默認所有閉合 List<int> mList; _LearnExpansionPanelList(){ mList=new List(); for(int i=0;i<5;i++){ mList.add(i); } } @override Widget build(BuildContext context) { return new Scaffold( body: new SingleChildScrollView( child:new Column( children: <Widget>[ new Text('這是一個自帶的,樣子挺醜的吧'), new ExpansionPanelList( expansionCallback: (panelIndex,isExpanded){ setState(() { currentPanelIndex=(currentPanelIndex!=panelIndex?panelIndex:-1); }); }, children: mList.map((i){ return new ExpansionPanel( headerBuilder: (context,isExpanded){ return new ListTile( title: new Text('這是標題$i'), ); }, body:new Padding( padding: EdgeInsets.all(30.0), child:new ListBody( children: <Widget>[ new Text('這是標題$i的內容'), ], ), ), isExpanded: currentPanelIndex==i, ); }).toList(), ), new Text('拉一個好看點的吧,相似qq分組之類的'), // new ListView.builder( // itemBuilder: (BuildContext context, int index){ // return new ListTile( // leading: new Icon(Icons.add), // title: new Text('111'), // ); // }, // itemCount: 1, // ), ], ), ), ); } }