Flutter に AlertDialog があり、ドロップダウン ボタンを介してさまざまなフィルタリングと並べ替えのオプションを表示します。ただし、要素が多すぎて表示できない場合はすぐにスクロールできるようにしたいと考えています。リストビューを配置すると、ドロップダウン ボタンの灰色のボックスが表示されます (写真を参照)。これをスクロール可能にするにはどうすればよいですか?
コード:
showDialog(
context: context,
builder: (BuildContext context){
return Consumer<VillagerFilter>(
builder: (context, filter, _child) {
return AlertDialog(
title: Text(localization.filterTitleFilterSearch),
content: Container(
height: 500,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
//FIlterbereich
Text("Filter:", textAlign: TextAlign.left,),
Row(
children: <Widget>[
Checkbox(value: filter.isFilterObtained(), onChanged: (newIsCaught){filter.setFilterObtained(newIsCaught);}
),
Text(localization.filterLivingHere)
],
),
Row(
children: <Widget>[
Checkbox(value: filter.isFilterFavourite(), onChanged: (newIsCaught){filter.setFilterFavourite(newIsCaught);}
),
Text(localization.filterFavourite)
],
),
//personalityfilter
ListTile(
title:
Text(localization.filterPersonality + " "),
subtitle: DropdownButton<String>(
value: filter.getFilterPersonality(),
onChanged: (String newValue){
filter.setFilterPersonality(newValue);
},
items: [
'-',
localization.filterPersonalityCranky,
localization.filterPersonalityJock,
]
.map<DropdownMenuItem<String>>((String value){
return DropdownMenuItem<String> (
value: value,
child: Text(value)
);
}).toList()
),
),
//Genderfilter
ListTile(
title:
Text(localization.gender + " "),
subtitle: DropdownButton<String>(
value: filter.getFilterGender(),
onChanged: (String newValue){
filter.setFilterGender(newValue);
},
items: [
'-',
localization.male,
localization.female,
]
.map<DropdownMenuItem<String>>((String value){
return DropdownMenuItem<String> (
value: value,
child: Text(value)
);
}).toList()
),
),
],
),
),
elevation: 24,
backgroundColor: nookDefaultBackgroundColor,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.all(Radius.circular(25.0))
),
actions: <Widget>[
FlatButton(
child: Text('Okay'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
}
);
},
);