|
@@ -101,19 +101,23 @@ class CustomBannerWidget extends StatelessWidget { |
|
|
CustomBannerListStyle right1 = listStyle.firstWhere((element) => element.locationType == 'right1'); |
|
|
CustomBannerListStyle right1 = listStyle.firstWhere((element) => element.locationType == 'right1'); |
|
|
CustomBannerListStyle right2 = listStyle.firstWhere((element) => element.locationType == 'right2'); |
|
|
CustomBannerListStyle right2 = listStyle.firstWhere((element) => element.locationType == 'right2'); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(right2)) return Container(); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(right2)) return Container(); |
|
|
return Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 1, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right2), child: CachedNetworkImage(imageUrl: right2?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return IntrinsicHeight( |
|
|
|
|
|
child: Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
// Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: _buildSingleWidthWidget(context, left1)), |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 1, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right2), child: CachedNetworkImage(imageUrl: right2?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
), |
|
|
), |
|
|
), |
|
|
|
|
|
], |
|
|
|
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@@ -123,19 +127,22 @@ class CustomBannerWidget extends StatelessWidget { |
|
|
CustomBannerListStyle left2 = listStyle.firstWhere((element) => element.locationType == 'left2'); |
|
|
CustomBannerListStyle left2 = listStyle.firstWhere((element) => element.locationType == 'left2'); |
|
|
CustomBannerListStyle right1 = listStyle.firstWhere((element) => element.locationType == 'right1'); |
|
|
CustomBannerListStyle right1 = listStyle.firstWhere((element) => element.locationType == 'right1'); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(left2)) return Container(); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(left2)) return Container(); |
|
|
return Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 1, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left2), child: CachedNetworkImage(imageUrl: left2?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
|
|
|
return IntrinsicHeight( |
|
|
|
|
|
child: Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 1, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, left2), child: CachedNetworkImage(imageUrl: left2?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
), |
|
|
), |
|
|
), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
|
|
|
// Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: _buildSingleWidthWidget(context, right1)), |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@@ -147,24 +154,27 @@ class CustomBannerWidget extends StatelessWidget { |
|
|
CustomBannerListStyle right3 = listStyle.firstWhere((element) => element.locationType == 'right3'); |
|
|
CustomBannerListStyle right3 = listStyle.firstWhere((element) => element.locationType == 'right3'); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(right2) || EmptyUtil.isEmpty(right3)) return Container(); |
|
|
if (EmptyUtil.isEmpty(left1) || EmptyUtil.isEmpty(right1) || EmptyUtil.isEmpty(right2) || EmptyUtil.isEmpty(right3)) return Container(); |
|
|
|
|
|
|
|
|
return Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 4, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 6, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right2), child: CachedNetworkImage(imageUrl: right2?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right3), child: CachedNetworkImage(imageUrl: right3?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
) |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
|
|
|
) |
|
|
|
|
|
], |
|
|
|
|
|
|
|
|
return IntrinsicHeight( |
|
|
|
|
|
child: Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
// Flexible(flex: 4, child: GestureDetector(onTap: () => _itemOnClick(context, left1), child: CachedNetworkImage(imageUrl: left1?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: _buildSingleWidthWidget(context, left1)), |
|
|
|
|
|
Flexible( |
|
|
|
|
|
flex: 6, |
|
|
|
|
|
child: Column( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right1), child: CachedNetworkImage(imageUrl: right1?.img ?? ''))), |
|
|
|
|
|
Row( |
|
|
|
|
|
children: <Widget>[ |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right2), child: CachedNetworkImage(imageUrl: right2?.img ?? ''))), |
|
|
|
|
|
Flexible(flex: 1, child: GestureDetector(onTap: () => _itemOnClick(context, right3), child: CachedNetworkImage(imageUrl: right3?.img ?? ''))), |
|
|
|
|
|
], |
|
|
|
|
|
) |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
|
|
|
) |
|
|
|
|
|
], |
|
|
|
|
|
), |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@@ -203,4 +213,18 @@ class CustomBannerWidget extends StatelessWidget { |
|
|
.toList(), |
|
|
.toList(), |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/// 单个 |
|
|
|
|
|
Widget _buildSingleWidthWidget(BuildContext context, CustomBannerListStyle listStyle){ |
|
|
|
|
|
return GestureDetector( |
|
|
|
|
|
behavior: HitTestBehavior.opaque, |
|
|
|
|
|
onTap: ()=> _itemOnClick(context, listStyle), |
|
|
|
|
|
child: Container( |
|
|
|
|
|
width: double.infinity, |
|
|
|
|
|
child: CachedNetworkImage( |
|
|
|
|
|
imageUrl: listStyle?.img ?? '', |
|
|
|
|
|
), |
|
|
|
|
|
), |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
} |
|
|
} |