Browse Source

safety

master
fmk 3 years ago
parent
commit
49889246fa
  1. 318
      lib/store/store_order.dart
  2. 1
      lib/store/store_view/settlement.dart
  3. 160
      lib/store/store_view/store_activity.dart
  4. 400
      lib/store/store_view/store_order_list.dart
  5. 4
      lib/web/web_view/web_header.dart

318
lib/store/store_order.dart

@ -9,8 +9,9 @@ import 'package:huixiang/retrofit/data/activity.dart';
import 'package:huixiang/retrofit/data/base_data.dart'; import 'package:huixiang/retrofit/data/base_data.dart';
import 'package:huixiang/retrofit/data/store_info.dart'; import 'package:huixiang/retrofit/data/store_info.dart';
import 'package:huixiang/retrofit/retrofit_api.dart'; import 'package:huixiang/retrofit/retrofit_api.dart';
import 'package:huixiang/store/store_view/store_activity.dart';
import 'package:huixiang/store/store_view/store_info.dart'; import 'package:huixiang/store/store_view/store_info.dart';
import 'package:huixiang/store/store_view/store_order_page.dart'; import 'package:huixiang/store/store_view/store_order_list.dart';
import 'package:huixiang/union/union_view/union_coupon.dart'; import 'package:huixiang/union/union_view/union_coupon.dart';
import 'package:huixiang/union/union_view/vip.dart'; import 'package:huixiang/union/union_view/vip.dart';
import 'package:huixiang/utils/font_weight.dart'; import 'package:huixiang/utils/font_weight.dart';
@ -40,11 +41,24 @@ class _StoreOrderPage extends State<StoreOrderPage>
ApiService apiService; ApiService apiService;
StoreInfo storeInfo; StoreInfo storeInfo;
RefreshController refreshController; RefreshController refreshController;
List<Widget> _widgetOptions;
@override @override
void initState() { void initState() {
super.initState(); super.initState();
if (tabcontroller == null)
tabcontroller = TabController(
length: 2,
vsync: this,
);
_widgetOptions = [
StoreOrderListPage(widget.arguments, widget.activitys,
storeInfo, controller),
///,
StoreActivity(widget.arguments, widget.activitys,),
];
queryStoreInfo(); queryStoreInfo();
} }
@ -78,7 +92,11 @@ class _StoreOrderPage extends State<StoreOrderPage>
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Stack( return Stack(
children: [ children: [
Expanded( Positioned(
left: 0,
right: 0,
top: 0,
bottom: 54.h,
child: DefaultTabController( child: DefaultTabController(
length: 2, length: 2,
child: SmartRefresher( child: SmartRefresher(
@ -94,10 +112,12 @@ class _StoreOrderPage extends State<StoreOrderPage>
child: NestedScrollView( child: NestedScrollView(
controller: controller, controller: controller,
dragStartBehavior: DragStartBehavior.start, dragStartBehavior: DragStartBehavior.start,
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) { headerSliverBuilder:
(BuildContext context, bool innerBoxIsScrolled) {
return [ return [
SliverOverlapAbsorber( SliverOverlapAbsorber(
handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), handle: NestedScrollView.sliverOverlapAbsorberHandleFor(
context),
sliver: SliverAppBar( sliver: SliverAppBar(
title: Text( title: Text(
widget.storeInfo != null widget.storeInfo != null
@ -202,10 +222,7 @@ class _StoreOrderPage extends State<StoreOrderPage>
padding: EdgeInsets.symmetric(horizontal: 10.w), padding: EdgeInsets.symmetric(horizontal: 10.w),
width: MediaQuery.of(context).size.width, width: MediaQuery.of(context).size.width,
child: TabBar( child: TabBar(
controller: tabcontroller = TabController( controller: tabcontroller,
length: 2,
vsync: this,
),
automaticIndicatorColorAdjustment: true, automaticIndicatorColorAdjustment: true,
isScrollable: true, isScrollable: true,
indicatorWeight: 1, indicatorWeight: 1,
@ -236,13 +253,7 @@ class _StoreOrderPage extends State<StoreOrderPage>
}, },
body: TabBarView( body: TabBarView(
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
children: [ children: _widgetOptions,
StoreOrderListPage(widget.arguments, widget.activitys, storeInfo, controller),
Container(
color: Colors.black,
width: MediaQuery.of(context).size.width,
),
],
controller: tabcontroller, controller: tabcontroller,
), ),
), ),
@ -293,6 +304,7 @@ class _StoreOrderPage extends State<StoreOrderPage>
textColor: Colors.white, textColor: Colors.white,
fontWeight: MyFontWeight.regular, fontWeight: MyFontWeight.regular,
backgroup: Color(0xFF32A060), backgroup: Color(0xFF32A060),
radius: 0,
fontSize: 16.sp, fontSize: 16.sp,
padding: EdgeInsets.symmetric(vertical: 5.h), padding: EdgeInsets.symmetric(vertical: 5.h),
), ),
@ -305,11 +317,11 @@ class _StoreOrderPage extends State<StoreOrderPage>
InkWell( InkWell(
onTap: () { onTap: () {
setState(() { setState(() {
// showShoppingCart(); showShoppingCart();
}); });
}, },
child: Image.asset( child: Image.asset(
"assets/image/icon_shop.png", "assets/image/shopp.png",
width: 88, width: 88,
height: 88, height: 88,
fit: BoxFit.fitWidth, fit: BoxFit.fitWidth,
@ -327,7 +339,6 @@ class _StoreOrderPage extends State<StoreOrderPage>
backgroup: Color(0xFF32A060), backgroup: Color(0xFF32A060),
fontSize: 12.sp, fontSize: 12.sp,
radius: 100, radius: 100,
// padding: EdgeInsets.symmetric(vertical: 5.h),
), ),
) )
], ],
@ -339,6 +350,275 @@ class _StoreOrderPage extends State<StoreOrderPage>
); );
} }
///
showShoppingCart() {
showModalBottomSheet(
context: context,
backgroundColor: Colors.transparent,
builder: (context) {
return StatefulBuilder(builder: (context1, state) {
return Container(
alignment: Alignment.topCenter,
width: double.infinity,
height: MediaQuery.of(context).size.height / 2,
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: [
Container(
padding: EdgeInsets.only(
top: 16,
left: 16,
right: 16,
bottom: 8,
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"已选商品",
style: TextStyle(
color: Colors.black,
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/delete.png",
width: 22,
height: 22,
),
),
],
),
),
Expanded(
child: Container(
padding: EdgeInsets.only(
top: 8,
left: 16,
right: 16,
),
child: ListView.builder(
itemCount: 2,
physics: BouncingScrollPhysics(),
itemBuilder: (context, position) {
return shoppGoodsItem();
},
),
),
),
Stack(
alignment: Alignment.bottomLeft,
children: [
Container(
height: 54.h,
decoration: BoxDecoration(
color: Color(0xFFFAFAFA),
boxShadow: [
BoxShadow(
color: Colors.black.withAlpha(8),
offset: Offset(0, -1),
blurRadius: 3,
spreadRadius: 0,
),
],
),
child: Row(
children: [
Spacer(),
Text(
S.of(context).heji,
style: TextStyle(
fontSize: 12.sp,
fontWeight: MyFontWeight.regular,
color: Colors.black,
),
),
Text(
"¥19.00",
style: TextStyle(
fontSize: 20.sp,
fontWeight: MyFontWeight.medium,
color: Color(0xFF32A060),
),
),
Spacer(),
RoundButton(
width: 103.w,
height: 54.h,
text: S.current.jiesuan,
textColor: Colors.white,
fontWeight: MyFontWeight.regular,
backgroup: Color(0xFF32A060),
radius: 0,
fontSize: 16.sp,
padding: EdgeInsets.symmetric(vertical: 5.h),
)
],
),
),
Stack(
children: [
InkWell(
onTap: () {
Navigator.of(context).pop();
},
child: Image.asset(
"assets/image/shopp.png",
width: 88,
height: 88,
),
),
Positioned(
right: 15,
top: 14,
child: RoundButton(
width: 17,
height: 17,
text: "1",
textColor: Colors.white,
fontWeight: MyFontWeight.regular,
backgroup: Color(0xFF32A060),
fontSize: 12.sp,
radius: 100,
),
),
],
),
],
),
],
),
);
});
},
);
}
Widget shoppGoodsItem() {
return Container(
padding: EdgeInsets.only(bottom: 10),
child: Row(
children: [
Image.asset(
"assets/image/default_1.png",
width: 60,
height: 60,
fit: BoxFit.cover,
),
SizedBox(width: 10),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"手工啵啵奶茶",
style: TextStyle(
color: Colors.black,
fontSize: 12.sp,
fontWeight: MyFontWeight.medium,
),
),
SizedBox(height: 2),
Row(
children: [
Text(
"无香精",
style: TextStyle(
color: Color(0xFF4C4C4C),
fontSize: 11.sp,
fontWeight: MyFontWeight.regular,
),
),
SizedBox(width: 10),
Text(
"无香精",
style: TextStyle(
color: Color(0xFF4C4C4C),
fontSize: 11.sp,
fontWeight: MyFontWeight.regular,
),
)
],
),
SizedBox(height: 6),
Row(
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Text(
"会员价",
style: TextStyle(
color: Color(0xFFFF7A1A),
fontSize: 13.sp,
fontWeight: MyFontWeight.medium,
),
),
Text(
"¥19.00",
style: TextStyle(
color: Color(0xFFFF7A1A),
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
)
],
),
],
),
Spacer(),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/reduce.png",
width: 22,
height: 22,
),
),
Padding(
padding: EdgeInsets.only(left: 8, right: 8),
child: Text(
"1",
style: TextStyle(
color: Colors.black,
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
),
),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/add.png",
width: 22,
height: 22,
),
),
],
),
],
),
flex: 1,
),
],
),
);
}
// @override // @override
// bool get wantKeepAlive => true; // bool get wantKeepAlive => true;
} }

1
lib/store/store_view/settlement.dart

@ -3,7 +3,6 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:huixiang/generated/l10n.dart'; import 'package:huixiang/generated/l10n.dart';
import 'package:huixiang/order/order_view/order_commodity.dart'; import 'package:huixiang/order/order_view/order_commodity.dart';
import 'package:huixiang/order/order_view/order_info.dart';
import 'package:huixiang/retrofit/data/base_data.dart'; import 'package:huixiang/retrofit/data/base_data.dart';
import 'package:huixiang/retrofit/data/order_info.dart'; import 'package:huixiang/retrofit/data/order_info.dart';
import 'package:huixiang/retrofit/retrofit_api.dart'; import 'package:huixiang/retrofit/retrofit_api.dart';

160
lib/store/store_view/store_activity.dart

@ -0,0 +1,160 @@
import 'package:flutter/material.dart';
import 'package:flutter_swiper/flutter_swiper.dart';
import 'package:huixiang/retrofit/data/activity.dart';
import 'package:huixiang/utils/font_weight.dart';
import 'package:huixiang/view_widget/custom_image.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class StoreActivity extends StatefulWidget {
final Map<String, dynamic> arguments;
final List<Activity> activitys;
StoreActivity(this.arguments, this.activitys);
@override
State<StatefulWidget> createState() {
return _StoreActivity();
}
}
class _StoreActivity extends State<StoreActivity> {
@override
Widget build(BuildContext context) {
return Container(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height,
color: Colors.white,
child: Swiper(
viewportFraction: 0.95,
loop: false,
itemBuilder: (context, position) {
return InkWell(
onTap: () {
if (widget.arguments["source"] != null &&
widget.arguments["source"] == widget.activitys[position].id) {
Navigator.of(context).pop();
} else {
Navigator.of(context).pushNamed('/router/web_page', arguments: {
"activityId": widget.activitys[position].id,
"source": widget.arguments["id"]
});
}
},
child: Container(
margin: EdgeInsets.symmetric(horizontal: 5.w),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(8),
boxShadow: [
BoxShadow(
color: Color(0x0D000000),
offset: Offset(0, 3),
blurRadius: 14,
spreadRadius: 0,
),
],
),
child: Stack(
children: [
Container(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.max,
children: [
MImage(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].coverImg
: "",
aspectRatio: 2.2,
radius: BorderRadius.vertical(
top: Radius.circular(8),
),
fit: BoxFit.cover,
errorSrc: "assets/image/default_2_1.png",
fadeSrc: "assets/image/default_2_1.png",
),
Container(
padding: EdgeInsets.all(8),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].storeName
: "",
style: TextStyle(
fontSize: 14.sp,
fontWeight: MyFontWeight.semi_bold,
color: Color(0xFF000000),
),
),
SizedBox(
height: 4.h,
),
Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].mainTitle
: "",
style: TextStyle(
fontSize: 12.sp,
fontWeight: MyFontWeight.semi_bold,
color: Color(0xFF727272),
),
),
],
),
),
],
),
),
Positioned(
top: 0,
right: 0,
child: Container(
padding: EdgeInsets.symmetric(
vertical: 4.h,
horizontal: 8.w,
),
decoration: BoxDecoration(
color: Colors.black.withAlpha(76),
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(8),
topRight: Radius.circular(8),
),
),
child: Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].startTime.split(" ")[0]
: "",
style: TextStyle(
fontWeight: MyFontWeight.semi_bold,
fontSize: 12.sp,
color: Color(0xD9FFFFFF),
),
),
),
),
],
),
),
);
},
itemCount: (widget.activitys != null && widget.activitys.length > 0)
? widget.activitys.length
: 0,
),
);
}
}

400
lib/store/store_view/store_order_page.dart → lib/store/store_view/store_order_list.dart

@ -66,6 +66,7 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
height: MediaQuery.of(context).size.height, height: MediaQuery.of(context).size.height,
child: ListView.builder( child: ListView.builder(
itemCount: 28, itemCount: 28,
padding: EdgeInsets.only(top: 25, bottom: 50),
controller: widget.controller, controller: widget.controller,
itemBuilder: (context, position) { itemBuilder: (context, position) {
return orderItem(position); return orderItem(position);
@ -130,8 +131,6 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
color: Colors.white, color: Colors.white,
padding: EdgeInsets.only(right: 16.w, bottom: 10, top: 10), padding: EdgeInsets.only(right: 16.w, bottom: 10, top: 10),
child: Row( child: Row(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
SizedBox(width: 12.w), SizedBox(width: 12.w),
Image.asset( Image.asset(
@ -198,7 +197,7 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
fontSize: 11.sp, fontSize: 11.sp,
fontWeight: MyFontWeight.medium, fontWeight: MyFontWeight.medium,
), ),
) ),
], ],
), ),
Row( Row(
@ -219,7 +218,7 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
fontSize: 10.sp, fontSize: 10.sp,
fontWeight: MyFontWeight.regular, fontWeight: MyFontWeight.regular,
), ),
) ),
], ],
), ),
], ],
@ -228,9 +227,7 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
true true
? GestureDetector( ? GestureDetector(
onTap: () { onTap: () {
setState(() { showStoreSelector();
showStoreSelector();
});
}, },
child: RoundButton( child: RoundButton(
width: 49.w, width: 49.w,
@ -282,137 +279,6 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
); );
} }
///
Widget starGoodsItem() {
return Container(
child: Swiper(
viewportFraction: 0.95,
loop: false,
itemBuilder: (context, position) {
return InkWell(
onTap: () {
if (widget.arguments["source"] != null &&
widget.arguments["source"] == widget.activitys[position].id) {
Navigator.of(context).pop();
} else {
Navigator.of(context).pushNamed('/router/web_page', arguments: {
"activityId": widget.activitys[position].id,
"source": widget.arguments["id"]
});
}
},
child: Container(
margin: EdgeInsets.symmetric(horizontal: 5.w),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(8),
boxShadow: [
BoxShadow(
color: Color(0x0D000000),
offset: Offset(0, 3),
blurRadius: 14,
spreadRadius: 0,
)
],
),
child: Stack(
children: [
Container(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.max,
children: [
MImage(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].coverImg
: "",
aspectRatio: 2.2,
radius: BorderRadius.vertical(
top: Radius.circular(8),
),
fit: BoxFit.cover,
errorSrc: "assets/image/default_2_1.png",
fadeSrc: "assets/image/default_2_1.png",
),
Container(
padding: EdgeInsets.all(8),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].storeName
: "",
style: TextStyle(
fontSize: 14.sp,
fontWeight: MyFontWeight.semi_bold,
color: Color(0xFF000000),
),
),
SizedBox(
height: 4.h,
),
Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].mainTitle
: "",
style: TextStyle(
fontSize: 12.sp,
fontWeight: MyFontWeight.semi_bold,
color: Color(0xFF727272),
),
),
],
),
),
],
),
),
Positioned(
top: 0,
right: 0,
child: Container(
padding: EdgeInsets.symmetric(
vertical: 4.h,
horizontal: 8.w,
),
decoration: BoxDecoration(
color: Colors.black.withAlpha(76),
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(8),
topRight: Radius.circular(8),
),
),
child: Text(
(widget.activitys != null &&
widget.activitys.length > position)
? widget.activitys[position].startTime.split(" ")[0]
: "",
style: TextStyle(
fontWeight: MyFontWeight.semi_bold,
fontSize: 12.sp,
color: Color(0xD9FFFFFF),
),
),
),
),
],
),
),
);
},
itemCount: (widget.activitys != null && widget.activitys.length > 0)
? widget.activitys.length
: 0,
),
);
}
/// ///
showStoreSelector() { showStoreSelector() {
showModalBottomSheet( showModalBottomSheet(
@ -666,262 +532,4 @@ class _StoreOrderListPage extends State<StoreOrderListPage> {
); );
} }
///
showShoppingCart() {
showModalBottomSheet(
context: context,
backgroundColor: Colors.transparent,
builder: (context) {
return StatefulBuilder(builder: (context1, state) {
return Container(
alignment: Alignment.topCenter,
width: double.infinity,
decoration: BoxDecoration(
color: Color(0xFFFAFAFA),
borderRadius: BorderRadius.only(
topLeft: Radius.circular(8), topRight: Radius.circular(8)),
),
child: Stack(
children: [
Container(
padding: EdgeInsets.only(top: 16, left: 16, right: 16),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"已选商品",
style: TextStyle(
color: Colors.black,
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/delete.png",
width: 22,
height: 22,
),
),
],
),
SizedBox(height: 24.h),
Expanded(
child: Container(
child: ListView.builder(
itemCount: 10,
shrinkWrap: true,
// physics:NeverScrollableScrollPhysics(),
itemBuilder: (context, position) {
return shoppGoodsItem();
}),
),
)
],
),
),
Positioned(
bottom: 0,
left: 0,
right: 0,
child: Stack(
alignment: Alignment.bottomLeft,
children: [
Container(
height: 54.h,
color: Color(0xFFFAFAFA),
child: Row(
// mainAxisAlignment: MainAxisAlignment.end,
// crossAxisAlignment: CrossAxisAlignment.end,
children: [
Spacer(),
Text(
S.of(context).heji,
style: TextStyle(
fontSize: 12.sp,
fontWeight: MyFontWeight.regular,
color: Colors.black,
),
),
Text(
"¥19.00",
style: TextStyle(
fontSize: 20.sp,
fontWeight: MyFontWeight.medium,
color: Color(0xFF32A060),
),
),
Spacer(),
RoundButton(
width: 103.w,
height: 54.h,
text: S.current.jiesuan,
textColor: Colors.white,
fontWeight: MyFontWeight.regular,
backgroup: Color(0xFF32A060),
fontSize: 16.sp,
padding: EdgeInsets.symmetric(vertical: 5.h),
)
],
),
),
Stack(
children: [
InkWell(
onTap: () {
setState(() {
Navigator.of(context).pop();
});
},
child: Image.asset(
"assets/image/shop.png",
width: 88,
height: 88,
),
),
Positioned(
right: 15,
top: 14,
child: RoundButton(
width: 17,
height: 17,
text: "1",
textColor: Colors.white,
fontWeight: MyFontWeight.regular,
backgroup: Color(0xFF32A060),
fontSize: 12.sp,
radius: 100,
// padding: EdgeInsets.symmetric(vertical: 5.h),
),
)
],
),
],
),
)
],
),
);
});
},
);
}
Widget shoppGoodsItem() {
return Container(
padding: EdgeInsets.only(bottom: 10),
child: Row(
children: [
Image.asset(
"assets/image/default_1.png",
width: 60,
height: 60,
fit: BoxFit.cover,
),
SizedBox(width: 10),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"手工啵啵奶茶",
style: TextStyle(
color: Colors.black,
fontSize: 12.sp,
fontWeight: MyFontWeight.medium,
),
),
SizedBox(height: 2),
Row(
children: [
Text(
"无香精",
style: TextStyle(
color: Color(0xFF4C4C4C),
fontSize: 11.sp,
fontWeight: MyFontWeight.regular,
),
),
SizedBox(width: 10),
Text(
"无香精",
style: TextStyle(
color: Color(0xFF4C4C4C),
fontSize: 11.sp,
fontWeight: MyFontWeight.regular,
),
)
],
),
SizedBox(height: 6),
Row(
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Text(
"会员价",
style: TextStyle(
color: Color(0xFFFF7A1A),
fontSize: 13.sp,
fontWeight: MyFontWeight.medium,
),
),
Text(
"¥19.00",
style: TextStyle(
color: Color(0xFFFF7A1A),
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
)
],
),
],
),
Spacer(),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/reduce.png",
width: 22,
height: 22,
),
),
Padding(
padding: EdgeInsets.only(left: 8, right: 8),
child: Text(
"1",
style: TextStyle(
color: Colors.black,
fontSize: 14.sp,
fontWeight: MyFontWeight.medium,
),
),
),
InkWell(
onTap: () {},
child: Image.asset(
"assets/image/add.png",
width: 22,
height: 22,
),
),
],
),
],
),
)
],
),
);
}
} }

4
lib/web/web_view/web_header.dart

@ -23,7 +23,7 @@ class _WebHeader extends State<WebHeader> {
return Column( return Column(
children: [ children: [
Container( Container(
color: Color(0xFFFFFFFF), color: Colors.white,
padding: EdgeInsets.all(12), padding: EdgeInsets.all(12),
alignment: Alignment.centerLeft, alignment: Alignment.centerLeft,
child: Text( child: Text(
@ -40,7 +40,7 @@ class _WebHeader extends State<WebHeader> {
), ),
), ),
Container( Container(
color: Color(0xFFFFFFFF), color: Colors.white,
padding: EdgeInsets.symmetric(horizontal: 12.w), padding: EdgeInsets.symmetric(horizontal: 12.w),
child: Row( child: Row(
children: [ children: [

Loading…
Cancel
Save