I’m making a filter screen that uses Filter Chips, creating a list of filter chips. I want the first item to be selected as default. How to achieve this?
Code:
final items2 = ["Both", "Boy", "Girl", "Infant"];
List<String> gender = [];
Wrap(
spacing: 8,
runSpacing: 8,
children: items2
.map(
(e) => FilterChip(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
),
backgroundColor: Colors.white,
selectedColor: const Color(0xff6fedf6),
label: Container(
height: 46,
width: 50,
alignment: Alignment.center,
child: Text(e),
),
labelStyle: GoogleFonts.poppins(
textStyle: const TextStyle(
color: Colors.black,
fontSize: 14,
fontWeight: FontWeight.w500,
letterSpacing: 0.5,
),
),
selected: gender.contains(e),
onSelected: (bool value) {
if (gender.contains(e)) {
gender.remove(e);
} else {
gender.add(e);
}
setState(() {});
}),
)
.toList(),
),
2
Answers
You could try like this
The implementation like this
You just need to add the item on selected list