generateInfoDetails method
dynamic
generateInfoDetails(
- VgkCardHorizontaWithSubDetailModel data,
- dynamic context,
- int divider,
- dynamic primaryColor,
Implementation
generateInfoDetails(VgkCardHorizontaWithSubDetailModel data, context,
int divider, primaryColor) {
var result = <Widget>[];
result.add(Padding(
padding: VgkProGamingTheme.edgeInsetsPaddingDoubleExtraLarge,
child: Row(
children: <Widget>[
Expanded(
child: Text(
data.key.toUpperCase(),
textAlign: TextAlign.left,
style: MediaQuery.of(context).size.width >= 375
? VgkProGamingTheme.h2(primaryColor)
: VgkProGamingTheme.h3(primaryColor),
),
),
],
),
));
result.add(
Padding(
padding: VgkProGamingTheme.edgeInsetsPaddingDoubleExtraLarge,
child: Row(
children: <Widget>[
Expanded(
child: Padding(
padding: const EdgeInsets.only(
right: VgkProGamingTheme.paddingDoubleExtraLarge,
),
child: Column(children: rangeInfo(data.range, primaryColor)),
),
),
Center(
child: Stack(
children: <Widget>[
Container(
width: 100,
height: 120,
decoration: BoxDecoration(
color: VgkProGamingTheme.grey.withOpacity(0.1),
borderRadius: const BorderRadius.all(
Radius.circular(16.0),
),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Padding(
padding: const EdgeInsets.all(8.0),
child: VgkCommonUtils.imageloader(data.src),
// child: Image.network(data.src),
),
],
),
),
],
),
),
],
),
),
);
result.add(
Padding(
padding: VgkProGamingTheme.edgeInsetsPaddingDoubleExtraLarge,
child: Container(
height: 2,
decoration: BoxDecoration(
color: VgkProGamingTheme.background,
borderRadius: const BorderRadius.all(Radius.circular(4.0)),
),
),
),
);
if (divider == 1 && data.info.isNotEmpty) {
for (var element in data.info) {
result.add(
VgkCommonWidget.vgkRangeInfo(
element.key, element.value, 100, primaryColor),
);
}
}
if (divider == 2 && data.info.isNotEmpty) {
int index = (data.info.length ~/ divider).toInt();
if (data.info.length == 1) {
index = 1;
}
int currentData = 0;
for (var i = 0; i < index; i++) {
var firstElement = data.info[currentData];
VgkHeadModel? secondElement;
if (currentData + 1 < data.info.length) {
secondElement = data.info[currentData + 1];
}
currentData = currentData + 2;
result.add(
widgetForDamageDetails(
firstElement.key,
firstElement.value,
secondElement != null ? secondElement.key : "",
secondElement != null ? secondElement.value : "",
primaryColor),
);
}
}
return result;
}