Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 362 KiB |
After Width: | Height: | Size: 898 B |
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 632 KiB |
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 96 KiB |
After Width: | Height: | Size: 105 KiB |
Before Width: | Height: | Size: 310 KiB After Width: | Height: | Size: 94 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 974 B |
After Width: | Height: | Size: 129 KiB |
After Width: | Height: | Size: 746 B |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 21 KiB |
@ -0,0 +1,94 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:flutter_html/flutter_html.dart'; |
||||||
|
import 'package:huixiang/generated/l10n.dart'; |
||||||
|
import 'package:huixiang/retrofit/data/coupon.dart'; |
||||||
|
import 'package:huixiang/retrofit/data/store.dart'; |
||||||
|
import 'package:flutter_screenutil/flutter_screenutil.dart'; |
||||||
|
import 'package:huixiang/store/scan.dart'; |
||||||
|
import 'package:huixiang/utils/font_weight.dart'; |
||||||
|
import 'package:huixiang/view_widget/border_text.dart'; |
||||||
|
import 'package:huixiang/view_widget/custom_image.dart'; |
||||||
|
import 'package:huixiang/view_widget/round_button.dart'; |
||||||
|
|
||||||
|
class CouponDetailsWidget extends StatefulWidget { |
||||||
|
final Coupon coupon; |
||||||
|
CouponDetailsWidget(this.coupon); |
||||||
|
@override |
||||||
|
State<StatefulWidget> createState() { |
||||||
|
return _CouponDetailsWidget(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
class _CouponDetailsWidget extends State<CouponDetailsWidget> { |
||||||
|
int selectIndex = 0; |
||||||
|
|
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return Container( |
||||||
|
width: double.infinity, |
||||||
|
height:291.h, |
||||||
|
decoration: BoxDecoration( |
||||||
|
color: Colors.white, |
||||||
|
borderRadius: BorderRadius.only( |
||||||
|
topLeft: Radius.circular(8), |
||||||
|
topRight: Radius.circular(8), |
||||||
|
), |
||||||
|
), |
||||||
|
child: Column( |
||||||
|
mainAxisAlignment: MainAxisAlignment.start, |
||||||
|
crossAxisAlignment: CrossAxisAlignment.start, |
||||||
|
children: [ |
||||||
|
Row( |
||||||
|
mainAxisAlignment: MainAxisAlignment.start, |
||||||
|
crossAxisAlignment: CrossAxisAlignment.center, |
||||||
|
children: [ |
||||||
|
Expanded( |
||||||
|
child: Container( |
||||||
|
alignment: Alignment.center, |
||||||
|
margin: EdgeInsets.symmetric(vertical: 12), |
||||||
|
child: Text( |
||||||
|
"使用详情", |
||||||
|
style: TextStyle( |
||||||
|
fontWeight: MyFontWeight.bold, |
||||||
|
fontSize: 15.sp, |
||||||
|
color: Color(0xFF353535), |
||||||
|
), |
||||||
|
), |
||||||
|
)), |
||||||
|
GestureDetector( |
||||||
|
onTap: () { |
||||||
|
setState(() { |
||||||
|
Navigator.of(context).pop(); |
||||||
|
}); |
||||||
|
}, |
||||||
|
child: Icon( |
||||||
|
Icons.clear, |
||||||
|
color: Colors.black, |
||||||
|
size: 18, |
||||||
|
), |
||||||
|
), |
||||||
|
SizedBox(width: 14), |
||||||
|
], |
||||||
|
), |
||||||
|
Container( |
||||||
|
width: double.infinity, |
||||||
|
height: 1.h, |
||||||
|
color: Color(0xFFF2F2F2), |
||||||
|
margin: EdgeInsets.only(bottom: 11.h), |
||||||
|
), |
||||||
|
Container( |
||||||
|
color: Colors.white, |
||||||
|
child: Html( |
||||||
|
data: widget.coupon.remark ?? "", |
||||||
|
customImageRenders: { |
||||||
|
networkSourceMatcher(): networkImageRender( |
||||||
|
loadingWidget: () { |
||||||
|
return Container(); |
||||||
|
}, |
||||||
|
), |
||||||
|
}, |
||||||
|
), |
||||||
|
), |
||||||
|
])); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,106 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:flutter_html/flutter_html.dart'; |
||||||
|
import 'package:huixiang/generated/l10n.dart'; |
||||||
|
import 'package:huixiang/retrofit/data/coupon.dart'; |
||||||
|
import 'package:huixiang/retrofit/data/recharge_list.dart'; |
||||||
|
import 'package:huixiang/retrofit/data/store.dart'; |
||||||
|
import 'package:flutter_screenutil/flutter_screenutil.dart'; |
||||||
|
import 'package:huixiang/store/scan.dart'; |
||||||
|
import 'package:huixiang/utils/font_weight.dart'; |
||||||
|
import 'package:huixiang/view_widget/border_text.dart'; |
||||||
|
import 'package:huixiang/view_widget/custom_image.dart'; |
||||||
|
import 'package:huixiang/view_widget/round_button.dart'; |
||||||
|
|
||||||
|
class RechargeWidget extends StatefulWidget { |
||||||
|
final RechargeList rechargeA; |
||||||
|
RechargeWidget(this.rechargeA); |
||||||
|
@override |
||||||
|
State<StatefulWidget> createState() { |
||||||
|
return _RechargeWidget(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
class _RechargeWidget extends State<RechargeWidget> { |
||||||
|
int selectIndex = 0; |
||||||
|
|
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return Container( |
||||||
|
padding: EdgeInsets.only(top: 12), |
||||||
|
decoration: new BoxDecoration( |
||||||
|
color: Colors.white, |
||||||
|
borderRadius: new BorderRadius.only( |
||||||
|
topLeft: const Radius.circular(25.0), |
||||||
|
topRight: const Radius.circular(25.0))), |
||||||
|
child: Container( |
||||||
|
width: 299, |
||||||
|
height:299, |
||||||
|
child: Column( |
||||||
|
children: [ |
||||||
|
Row( |
||||||
|
mainAxisAlignment: MainAxisAlignment.start, |
||||||
|
crossAxisAlignment: CrossAxisAlignment.center, |
||||||
|
children: [ |
||||||
|
Expanded(child: |
||||||
|
Container( |
||||||
|
margin: EdgeInsets.symmetric(vertical: 12.h), |
||||||
|
alignment: Alignment.center, |
||||||
|
child: Text( |
||||||
|
"充值说明", |
||||||
|
style: TextStyle( |
||||||
|
fontWeight: MyFontWeight.bold, |
||||||
|
fontSize: 15.sp, |
||||||
|
color: Color(0xFF353535), |
||||||
|
), |
||||||
|
), |
||||||
|
)), |
||||||
|
GestureDetector( |
||||||
|
onTap: (){ |
||||||
|
setState(() { |
||||||
|
Navigator.of(context).pop(); |
||||||
|
}); |
||||||
|
}, |
||||||
|
child: Icon( |
||||||
|
Icons.clear, |
||||||
|
color: Colors.black, |
||||||
|
size: 18, |
||||||
|
), |
||||||
|
), |
||||||
|
SizedBox(width: 14), |
||||||
|
], |
||||||
|
), |
||||||
|
SizedBox(height: 12.h,), |
||||||
|
Container( |
||||||
|
width: double.infinity, |
||||||
|
height: 1.h, |
||||||
|
color: Color(0xFFF2F2F2), |
||||||
|
margin: EdgeInsets.only(bottom:13.h), |
||||||
|
), |
||||||
|
Padding(padding:EdgeInsets.only(left: 14), |
||||||
|
child: |
||||||
|
Row( |
||||||
|
crossAxisAlignment: CrossAxisAlignment.start, |
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceAround, |
||||||
|
children: [ |
||||||
|
Expanded( |
||||||
|
child: Container( |
||||||
|
color: Colors.white, |
||||||
|
child: Html( |
||||||
|
data: widget.rechargeA.remark ?? "", |
||||||
|
customImageRenders: { |
||||||
|
networkSourceMatcher(): networkImageRender( |
||||||
|
loadingWidget: () { |
||||||
|
return Container(); |
||||||
|
}, |
||||||
|
), |
||||||
|
}, |
||||||
|
), |
||||||
|
), |
||||||
|
) |
||||||
|
], |
||||||
|
),) |
||||||
|
], |
||||||
|
), |
||||||
|
)); |
||||||
|
} |
||||||
|
} |