import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:onufitness/constants/color_constant.dart'; import 'package:onufitness/screens/rise/views/ongoing_tab.dart'; import 'package:onufitness/screens/rise/views/upcoming_tab.dart'; import '../controllers/rise_controller.dart'; class ExploreTab extends StatefulWidget { const ExploreTab({super.key}); @override State createState() => _ExploreTabState(); } class _ExploreTabState extends State { final controller = Get.find(); @override void initState() { super.initState(); WidgetsBinding.instance.addPostFrameCallback((_) { apiCall(); }); } apiCall() async { await controller.fetchOngoingChallenges(); await controller.fetchUpcomingChallenges(); } @override Widget build(BuildContext context) { return DefaultTabController( length: 2, child: GestureDetector( onTap: () { FocusScope.of(context).unfocus(); }, child: Column( children: [ Container( margin: EdgeInsets.all(16.w), decoration: BoxDecoration( color: textFieldFillColor, borderRadius: BorderRadius.circular(25.r), ), child: TabBar( indicator: BoxDecoration( color: Colors.black, borderRadius: BorderRadius.circular(25.r), ), labelColor: Colors.white, unselectedLabelColor: Color(darkGreyColor), dividerColor: Colors.transparent, tabs: [ Tab( child: Container( padding: EdgeInsets.symmetric(horizontal: 20.w), child: Text( 'Ongoing', style: TextStyle( fontWeight: FontWeight.w600, fontSize: 14.sp, ), ), ), ), Tab( child: Container( padding: EdgeInsets.symmetric(horizontal: 20.w), child: Text( 'Upcoming', style: TextStyle( fontWeight: FontWeight.w600, fontSize: 14.sp, ), ), ), ), ], ), ), Expanded( child: TabBarView(children: [OngoingTab(), UpcomingTab()]), ), ], ), ), ); } }