|
|
@@ -0,0 +1,642 @@
|
|
|
+import 'package:electronic_assistant/base/base_page.dart';
|
|
|
+import 'package:electronic_assistant/resource/assets.gen.dart';
|
|
|
+import 'package:electronic_assistant/resource/colors.gen.dart';
|
|
|
+import 'package:electronic_assistant/utils/expand.dart';
|
|
|
+import 'package:electronic_assistant/widget/login_code_btn.dart';
|
|
|
+import 'package:flutter/material.dart';
|
|
|
+import 'package:flutter/services.dart';
|
|
|
+import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
|
+import 'package:get/get.dart';
|
|
|
+
|
|
|
+import 'controller.dart';
|
|
|
+
|
|
|
+class StorePage extends BasePage<StoreController> {
|
|
|
+ const StorePage({super.key});
|
|
|
+
|
|
|
+ @override
|
|
|
+ bool immersive() {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @override
|
|
|
+ Widget buildBody(BuildContext context) {
|
|
|
+ return Stack(
|
|
|
+ children: [
|
|
|
+ Stack(
|
|
|
+ alignment: AlignmentDirectional.topStart,
|
|
|
+ children: [
|
|
|
+ _buildBackgroundGradient(),
|
|
|
+ _buildTopBG(),
|
|
|
+ Positioned(
|
|
|
+ left: 12.w,
|
|
|
+ top: 280,
|
|
|
+ width: ScreenUtil().screenWidth - 24.w,
|
|
|
+ child: Column(
|
|
|
+ crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ height: 20.h,
|
|
|
+ child: Assets.images.iconStoreDescripe.image(),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ height: 16.h,
|
|
|
+ ),
|
|
|
+ _buildGoods(),
|
|
|
+ SizedBox(
|
|
|
+ height: 16.h,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "·该套餐约可倾听45小时",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 10.sp,
|
|
|
+ color: "#AFAFAF".toColor(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ height: 16.h,
|
|
|
+ ),
|
|
|
+ _buildPayMethod(),
|
|
|
+ SizedBox(
|
|
|
+ height: 39.h,
|
|
|
+ ),
|
|
|
+ _buildService(),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ _buildTopBar(),
|
|
|
+ Positioned(
|
|
|
+ bottom: 0,
|
|
|
+ left: 0,
|
|
|
+ right: 0,
|
|
|
+ child: _buildBottombar(),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ // 背景颜色
|
|
|
+ Widget _buildBackgroundGradient() {
|
|
|
+ return Container(
|
|
|
+ width: 1.sw,
|
|
|
+ height: 1.sh,
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#071935'.toColor(), '#283B58'.toColor()],
|
|
|
+ begin: Alignment.topCenter,
|
|
|
+ end: Alignment.bottomCenter,
|
|
|
+ stops: const [0.4, 1.0],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ // 顶部背景图片
|
|
|
+ Widget _buildTopBG() {
|
|
|
+ return Assets.images.bgStoreTop.image();
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildTopBar() {
|
|
|
+ return Container(
|
|
|
+ height: 44.h,
|
|
|
+ margin: EdgeInsets.only(
|
|
|
+ left: 0,
|
|
|
+ right: 0,
|
|
|
+ top: ScreenUtil().statusBarHeight,
|
|
|
+ ),
|
|
|
+ padding: EdgeInsets.symmetric(horizontal: 12.w),
|
|
|
+ child: Row(
|
|
|
+ children: [
|
|
|
+ IconButton(
|
|
|
+ onPressed: () {},
|
|
|
+ icon: ImageIcon(
|
|
|
+ Assets.images.iconArrowBackWhite.provider(),
|
|
|
+ color: Colors.white,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ const Spacer(),
|
|
|
+ Container(
|
|
|
+ padding:
|
|
|
+ EdgeInsets.only(left: 6.w, top: 6.h, bottom: 6.h, right: 12.w),
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ color: "#01051C".toColor(),
|
|
|
+ border: Border.all(
|
|
|
+ color: "#7688B1".toColor(),
|
|
|
+ width: 1,
|
|
|
+ ),
|
|
|
+ borderRadius: BorderRadius.circular(16.h),
|
|
|
+ ),
|
|
|
+ child: Row(
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ width: 20,
|
|
|
+ child: Assets.images.iconStoreLogo.image(),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ width: 3.w,
|
|
|
+ ),
|
|
|
+ const Text(
|
|
|
+ "电量 ",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ color: Colors.white,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "600",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ color: Colors.white,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildGoods() {
|
|
|
+ return ListView.builder(
|
|
|
+ padding: const EdgeInsets.only(top: 0),
|
|
|
+ physics: const NeverScrollableScrollPhysics(),
|
|
|
+ itemBuilder: (context, index) {
|
|
|
+ return _buildGoodItem();
|
|
|
+ },
|
|
|
+ itemCount: 2,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildGoodItem() {
|
|
|
+ return Container(
|
|
|
+ height: 154,
|
|
|
+ child: Stack(
|
|
|
+ clipBehavior: Clip.none,
|
|
|
+ children: [
|
|
|
+ Positioned(
|
|
|
+ left: 0,
|
|
|
+ top: 10,
|
|
|
+ width: 132,
|
|
|
+ height: 144,
|
|
|
+ child: Container(
|
|
|
+ padding: const EdgeInsets.all(2),
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ borderRadius: BorderRadius.circular(12),
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#9075FF'.toColor(), '#4366FF'.toColor()],
|
|
|
+ begin: Alignment.centerLeft,
|
|
|
+ end: Alignment.centerRight,
|
|
|
+ stops: const [0.0, 1.0],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ child: Container(
|
|
|
+ width: 128,
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#FFF3F6'.toColor(), '#DADBFF'.toColor()],
|
|
|
+ begin: Alignment.topCenter,
|
|
|
+ end: Alignment.bottomCenter,
|
|
|
+ stops: const [0.0, 1.0],
|
|
|
+ ),
|
|
|
+ borderRadius: BorderRadius.circular(12),
|
|
|
+ ),
|
|
|
+ child: Column(
|
|
|
+ mainAxisAlignment: MainAxisAlignment.start,
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ height: 12,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "大电池",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 13,
|
|
|
+ fontWeight: FontWeight.w700,
|
|
|
+ color: "#6177F2".toColor(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Row(
|
|
|
+ crossAxisAlignment: CrossAxisAlignment.end,
|
|
|
+ mainAxisAlignment: MainAxisAlignment.center,
|
|
|
+ mainAxisSize: MainAxisSize.min,
|
|
|
+ children: [
|
|
|
+ Container(
|
|
|
+ margin: EdgeInsets.only(bottom: 9),
|
|
|
+ child: Text(
|
|
|
+ "¥",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 16,
|
|
|
+ color: "#6177F2".toColor(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "198",
|
|
|
+ textAlign: TextAlign.center,
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 39,
|
|
|
+ fontWeight: FontWeight.bold,
|
|
|
+ color: "#6177F2".toColor(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "¥258",
|
|
|
+ style: TextStyle(
|
|
|
+ color: "#AFAFAF".toColor(),
|
|
|
+ decoration: TextDecoration.lineThrough,
|
|
|
+ decorationColor: "#AFAFAF".toColor(),
|
|
|
+ fontSize: 14.0,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Container(
|
|
|
+ padding: EdgeInsets.symmetric(horizontal: 8, vertical: 4),
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#9075FF'.toColor(), '#4366FF'.toColor()],
|
|
|
+ begin: Alignment.topCenter,
|
|
|
+ end: Alignment.bottomCenter,
|
|
|
+ stops: const [0.0, 1.0],
|
|
|
+ ),
|
|
|
+ borderRadius: BorderRadius.circular(12),
|
|
|
+ ),
|
|
|
+ child: Expanded(
|
|
|
+ child: Row(
|
|
|
+ mainAxisSize: MainAxisSize.min,
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ width: 16,
|
|
|
+ child: Assets.images.iconStoreGoodFlash.image(),
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "550电量",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 13,
|
|
|
+ color: Colors.white,
|
|
|
+ ),
|
|
|
+ )
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ )
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Stack(
|
|
|
+ children: [
|
|
|
+ Container(
|
|
|
+ height: 29,
|
|
|
+ child: Assets.images.iconStoreGoodTag.image(),
|
|
|
+ ),
|
|
|
+ Positioned(
|
|
|
+ left: 8,
|
|
|
+ top: 2,
|
|
|
+ child: Text(
|
|
|
+ "最多人买",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ color: "#703D27".toColor(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildTopPayMethod(Image icon, String title) {
|
|
|
+ return Row(
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ width: 20.w,
|
|
|
+ child: icon,
|
|
|
+ ),
|
|
|
+ const SizedBox(
|
|
|
+ width: 6,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ title,
|
|
|
+ style: TextStyle(color: Colors.white, fontSize: 14.sp),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildPayMethod() {
|
|
|
+ return Column(
|
|
|
+ children: [
|
|
|
+ Row(
|
|
|
+ children: [
|
|
|
+ Text(
|
|
|
+ "支付方式",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 14.sp,
|
|
|
+ color: Colors.white,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ const Spacer(),
|
|
|
+ Obx(() {
|
|
|
+ return GestureDetector(
|
|
|
+ onTap: () {
|
|
|
+ controller.isExpanded.value = !controller.isExpanded.value;
|
|
|
+ },
|
|
|
+ child: Row(
|
|
|
+ children: [
|
|
|
+ Visibility(
|
|
|
+ visible: !controller.isExpanded.value,
|
|
|
+ child: _buildTopPayMethod(
|
|
|
+ Assets.images.iconStoreAlipay.image(),
|
|
|
+ "支付宝",
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Visibility(
|
|
|
+ visible: controller.isExpanded.value,
|
|
|
+ child: Text(
|
|
|
+ "收起",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 14.sp,
|
|
|
+ color: Colors.white,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Container(
|
|
|
+ width: 16.w,
|
|
|
+ child: controller.isExpanded.value
|
|
|
+ ? Assets.images.iconArrowUpWhite.image()
|
|
|
+ : Assets.images.iconArrowDownWhite.image(),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ Obx(() {
|
|
|
+ return Visibility(
|
|
|
+ visible: controller.isExpanded.value,
|
|
|
+ child: SizedBox(
|
|
|
+ height: 2 * 32,
|
|
|
+ child: ListView.builder(
|
|
|
+ padding: const EdgeInsets.only(top: 0),
|
|
|
+ physics: const NeverScrollableScrollPhysics(),
|
|
|
+ itemBuilder: (context, index) {
|
|
|
+ return _buildPayItem(
|
|
|
+ Assets.images.iconStoreAlipay.image().obs.value,
|
|
|
+ "支付宝",
|
|
|
+ true);
|
|
|
+ },
|
|
|
+ itemCount: 2,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }),
|
|
|
+ ],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildPayItem(Image icon, String title, bool isSelect) {
|
|
|
+ return Container(
|
|
|
+ height: 20.h,
|
|
|
+ margin: const EdgeInsets.only(top: 12),
|
|
|
+ child: Row(
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ width: 20.w,
|
|
|
+ child: icon,
|
|
|
+ ),
|
|
|
+ const SizedBox(
|
|
|
+ width: 6,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ title,
|
|
|
+ style: TextStyle(color: Colors.white, fontSize: 14.sp),
|
|
|
+ ),
|
|
|
+ const Spacer(),
|
|
|
+ GestureDetector(
|
|
|
+ onTap: () {
|
|
|
+ // controller.isAgree.value = !controller.isAgree.value;
|
|
|
+ },
|
|
|
+ child: SizedBox(
|
|
|
+ width: 20.w,
|
|
|
+ height: 20.w,
|
|
|
+ child: isSelect
|
|
|
+ ? Assets.images.iconSelectTrue.image()
|
|
|
+ : Assets.images.iconSelectFalse.image(),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildService() {
|
|
|
+ return Column(
|
|
|
+ children: [
|
|
|
+ Row(
|
|
|
+ children: [
|
|
|
+ Container(
|
|
|
+ width: 4.w,
|
|
|
+ height: 16.h,
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ color: Colors.white,
|
|
|
+ borderRadius: BorderRadius.circular(2),
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#357AFF'.toColor(), '#E389FF'.toColor()],
|
|
|
+ begin: Alignment.topCenter,
|
|
|
+ end: Alignment.bottomCenter,
|
|
|
+ stops: const [0.0, 1.0],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ width: 6.w,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "多种专属服务·高效辅助办公",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 15.sp,
|
|
|
+ color: Colors.white,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ Container(
|
|
|
+ padding: EdgeInsets.only(
|
|
|
+ left: 9,
|
|
|
+ right: 9,
|
|
|
+ top: 16,
|
|
|
+ ),
|
|
|
+ child: Row(
|
|
|
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
+ children: [
|
|
|
+ _buildServiceItem(
|
|
|
+ Assets.images.iconStoreServiceSum.image(),
|
|
|
+ "智能谈话总结",
|
|
|
+ ),
|
|
|
+ _buildServiceItem(
|
|
|
+ Assets.images.iconStoreServiceRemain.image(),
|
|
|
+ "待办任务处理",
|
|
|
+ ),
|
|
|
+ _buildServiceItem(
|
|
|
+ Assets.images.iconStoreServiceAdvice.image(),
|
|
|
+ "专业工作建议",
|
|
|
+ ),
|
|
|
+ _buildServiceItem(
|
|
|
+ Assets.images.iconStoreServiceDeal.image(),
|
|
|
+ "处理交代事宜",
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ height: 26.h,
|
|
|
+ ),
|
|
|
+ Container(
|
|
|
+ width: double.infinity,
|
|
|
+ padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 12),
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ color: "#40567D".toColor().withOpacity(0.2),
|
|
|
+ borderRadius: BorderRadius.circular(8),
|
|
|
+ ),
|
|
|
+ child: Column(
|
|
|
+ crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
+ children: [
|
|
|
+ Text(
|
|
|
+ "扣电规则",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ color: Colors.white.withOpacity(0.6),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ height: 6.h,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "1、小听每听5分钟扣1电量,不满5分钟按5分钟算。",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ color: Colors.white.withOpacity(0.6),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "2、大文件、超大文件生成新的总结,每次扣1电量。",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ color: Colors.white.withOpacity(0.6),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "3、用大文件和小听对话,每次对话扣1电量。",
|
|
|
+ style: TextStyle(
|
|
|
+ fontSize: 12,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ color: Colors.white.withOpacity(0.6),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildServiceItem(Image icon, String title) {
|
|
|
+ return Column(
|
|
|
+ children: [
|
|
|
+ SizedBox(
|
|
|
+ width: 32.w,
|
|
|
+ child: icon,
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ height: 2.h,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ title,
|
|
|
+ style: TextStyle(
|
|
|
+ color: ColorName.white.withOpacity(0.8),
|
|
|
+ fontSize: 11.sp,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Widget _buildBottombar() {
|
|
|
+ return Container(
|
|
|
+ padding: EdgeInsets.only(
|
|
|
+ left: 16.w,
|
|
|
+ right: 16.w,
|
|
|
+ top: 12.h,
|
|
|
+ bottom: ScreenUtil().bottomBarHeight + 12.h),
|
|
|
+ alignment: Alignment.topCenter,
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ color: "#283B58".toColor(),
|
|
|
+ boxShadow: const [
|
|
|
+ BoxShadow(
|
|
|
+ color: Color.fromARGB(1, 42, 48, 59), // 阴影颜色
|
|
|
+ spreadRadius: 0, // 阴影扩散半径
|
|
|
+ blurRadius: 20, // 阴影模糊半径
|
|
|
+ offset: Offset(0, 0), // 阴影偏移量
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ borderRadius: BorderRadius.only(
|
|
|
+ topLeft: Radius.circular(12.w),
|
|
|
+ topRight: Radius.circular(12.w),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ child: GestureDetector(
|
|
|
+ onTap: () {
|
|
|
+ // print(ScreenUtil().bottomBarHeight);
|
|
|
+ },
|
|
|
+ child: Container(
|
|
|
+ height: 48.h,
|
|
|
+ alignment: Alignment.center,
|
|
|
+ decoration: BoxDecoration(
|
|
|
+ gradient: LinearGradient(
|
|
|
+ colors: ['#9075FF'.toColor(), '#4366FF'.toColor()],
|
|
|
+ begin: Alignment.centerRight,
|
|
|
+ end: Alignment.centerRight,
|
|
|
+ stops: const [0.0, 1.0],
|
|
|
+ ),
|
|
|
+ borderRadius: BorderRadius.circular(8.h),
|
|
|
+ ),
|
|
|
+ child: Row(
|
|
|
+ mainAxisAlignment: MainAxisAlignment.center,
|
|
|
+ children: [
|
|
|
+ Text(
|
|
|
+ "立即购买",
|
|
|
+ style: TextStyle(
|
|
|
+ color: Colors.white,
|
|
|
+ fontSize: 16.sp,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ SizedBox(
|
|
|
+ width: 4.w,
|
|
|
+ ),
|
|
|
+ Text(
|
|
|
+ "¥198",
|
|
|
+ style: TextStyle(
|
|
|
+ color: Colors.white,
|
|
|
+ fontSize: 18.sp,
|
|
|
+ fontWeight: FontWeight.w500,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+}
|