請問有什么方法可以使擴展面板中的串列項可滾動。我試圖在下面的代碼中實作這一點,但是當我展開第一個面板時出現底部溢位錯誤。謝謝
ExpansionPanelList(
children: [
ExpansionPanel(
isExpanded: _isOpen[0],
headerBuilder: (context, isOpen) {
return Text("Activities");
},
body: SingleChildScrollView(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
_myListView(),
// _myListView(),
],
),
),
),
ExpansionPanel(
isExpanded: _isOpen[1],
headerBuilder: (context, isOpen) {
return Text("Ports");
},
body: Text("Test!!!"),
)
],
expansionCallback: (i, isOpen) {
setState(() {
_isOpen[i] = !isOpen;
});
},
)
這是我的 myListView 函式,
Widget _myListView() {
return MediaQuery.removePadding(
context: context,
removeTop: true,
child: ListView(
shrinkWrap: true,
children: List1.keys.map((String key) {
return new CheckboxListTile(
title: new Text(key),
value: List1[key],
activeColor: Colors.black,
checkColor: Colors.white,
onChanged: (bool? value) {
setState(() {
List1[key] = value!;
});
},
);
}).toList(),
),
);
}
uj5u.com熱心網友回復:
包裹你的專欄 SingleChildScrollView
SingleChildScrollView(
child: Column(
children: [
// your ExpansionPanelList
],
),
),
還可以添加physics: ScrollPhysics(),在_myListView()小部件
Widget _myListView() {
return MediaQuery.removePadding(
context: context,
removeTop: true,
child: ListView(
shrinkWrap: true,
physics: ScrollPhysics(),
children: List1.keys.map((String key) {
return new CheckboxListTile(
title: new Text(key),
value: List1[key],
activeColor: Colors.black,
checkColor: Colors.white,
onChanged: (bool value) {
setState(() {
List1[key] = value;
});
},
);
}).toList(),
),
);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/386110.html
