getPresentationWidgetsCustomBottomBarTemplate function
String
getPresentationWidgetsCustomBottomBarTemplate(
- String projectName
)
Implementation
String getPresentationWidgetsCustomBottomBarTemplate(String projectName) {
return '''
import 'package:flutter/material.dart';
import 'package:${projectName}/core/constants/app_assets.dart';
import 'package:${projectName}/presentation/widgets/common_svg_widget.dart';
import '../../core/theme/app_colors.dart';
import '../../core/utils/responsive_size.dart';
class CustomBottomNavBar extends StatelessWidget {
final int currentIndex;
final Function(int) onTap;
const CustomBottomNavBar({
super.key,
required this.currentIndex,
required this.onTap,
});
@override
Widget build(BuildContext context) {
return Container(
height: 75.sp,
padding: EdgeInsets.symmetric(horizontal: 10.sp, vertical: 5.sp),
decoration: const BoxDecoration(
color: Colors.white,
border: Border(top: BorderSide(color: AppColors.themeBorder)),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
_item("", "", 0),
_item("", "", 1),
_item("", "", 2),
_item("", "", 3),
_item("", "", 4),
],
),
);
}
Widget _item(String icon, String label, int index) {
final bool selected = currentIndex == index;
return InkWell(
onTap: () => onTap(index),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
icon!=""? SvgWidget(
assetName: icon??"",
color: selected ? AppColors.primary : Colors.grey,
):Icon(Icons.question_mark,
color: selected ? AppColors.primary : Colors.grey,
),
SizedBox(height: 4.sp),
Text(
label,
style: TextStyle(
fontSize: 12.sp,
color: selected ? AppColors.primary : Colors.grey,
),
),
],
),
);
}
}
''';
}