import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; class ProfileInFo extends StatelessWidget { String data = '.'; double sliderValue = 75; List menu = [ ProfileMenu(name: 'Personal information', icon: ''), ProfileMenu(name: 'Basic Details', icon: ''), ProfileMenu(name: 'Family Details', icon: ''), ]; @override Widget build(BuildContext context) { return Container( child: Column(crossAxisAlignment: CrossAxisAlignment.center, children: [ /// card header customLabel('Sultan khan', 22, Colors.black, true), customLabel('217869 | Software Developer', 14, Colors.grey, false), customLabel('sultan.khan@cloudsolutions.com.sa', 13, Colors.black, true), Divider(height: 40, thickness: 8, color: const Color(0xffefefef)), customLabel('We appreciates you for completing the service of', 10, Colors.black, true), SizedBox(height: 10), Container( child: Row(mainAxisAlignment: MainAxisAlignment.spaceAround, crossAxisAlignment: CrossAxisAlignment.center, children: [ Column( children: [customLabel('Years', 14, const Color(0xff808080), true), customLabel('03', 22, Color(0xff2BB8A6), true)], ), Column( children: [customLabel('Month', 14, const Color(0xff808080), true), customLabel('06', 22, Color(0xff2BB8A6), true)], ), Column( children: [customLabel('Day', 14, const Color(0xff808080), true), customLabel('20', 22, Color(0xff2BB8A6), true)], ) ])), Divider(height: 40, thickness: 8, color: const Color(0xffefefef)), Container( padding: EdgeInsets.only( left: 20, right: 20, ), child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ customLabel('Profile Completion 75%', 18, Colors.black, true), const SizedBox(height: 10), Row( children: [ for (var i = 0; i < 4; i++) if (i < 3) Expanded(child: drawSlider(Color(0xff2BB8A6))) else Expanded(child: drawSlider(const Color(0xffefefef))) ], ), const SizedBox(height: 10), Text( 'Complete Profile', style: TextStyle(color: Color(0xff2BB8A6), fontWeight: FontWeight.bold, decoration: TextDecoration.underline), ), ], )), /// description Divider(height: 50, thickness: 8, color: const Color(0xffefefef)), Column( children: menu.map((i) => rowItem(i, context)).toList(), ) ])); } Widget drawSlider(color) { return Row(children: [ Expanded( flex: 1, child: ClipRRect( borderRadius: BorderRadius.circular(10), child: Container( height: 6, width: 20, color: color, ), )), Container(height: 6, width: 3, color: Colors.white), ]); } Widget rowItem(obj, context) { return InkWell( onTap: () { // Navigator.pushNamed( // context, // AppRoutes.addEitScreen, // arguments: obj, // ); }, child: ListTile( leading: FlutterLogo(), title: Text(obj.name), trailing: Icon(Icons.arrow_forward), ), ); } Widget customLabel(String label, double size, Color color, bool isBold, {double padding = 0.0}) => Container( padding: EdgeInsets.all(padding), // height: 50, child: Column( mainAxisAlignment: MainAxisAlignment.spaceEvenly, crossAxisAlignment: CrossAxisAlignment.center, children: [Text(label, style: TextStyle(color: color, fontSize: size, fontWeight: isBold ? FontWeight.bold : FontWeight.normal))])); } class ProfileMenu { final String name; final String icon; ProfileMenu({this.name = '', this.icon = ''}); }