build method
Builds the segmented tab bar UI.
Implementation
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 16),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: List.generate(tabs.length, (i) {
final selected = i == selectedIndex;
return Expanded(
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 4),
child: GestureDetector(
onTap: () => onTabSelected(i),
child: Container(
height: 36,
decoration: BoxDecoration(
color: selected ? Colors.blueAccent : Colors.grey[850],
borderRadius: BorderRadius.circular(18),
),
alignment: Alignment.center,
child: Text(
tabs[i],
style: TextStyle(
color: selected ? Colors.white : Colors.grey[400],
fontWeight: FontWeight.w600,
),
),
),
),
),
);
}),
),
);
}