import 'package:ef/ef.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_svg/svg.dart'; import 'package:flutterflow_ui/flutterflow_ui.dart'; import 'package:vbvs_app/common/color/appConstants.dart'; import 'package:vbvs_app/common/util/FitTool.dart'; import 'package:vbvs_app/common/util/MyUtils.dart'; import 'package:vbvs_app/component/tool/ClickableContainer.dart'; import 'package:vbvs_app/component/tool/CustomCard.dart'; import 'package:vbvs_app/controller/main_bottom/global_controller.dart'; import 'package:vbvs_app/controller/theme_controller/ThemeController.dart'; import 'package:vbvs_app/controller/user_info_controller.dart'; class MinePage extends StatefulWidget { const MinePage({super.key}); @override State createState() => _MinePageState(); } class _MinePageState extends State { GlobalController globalController = Get.find(); UserInfoController userInfoController = Get.find(); ThemeController themeController = Get.find(); @override Widget build(BuildContext context) { SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle( statusBarColor: Colors.transparent, // 这里设置你希望的颜色 statusBarIconBrightness: Brightness.light, // 状态栏图标的亮度 )); return LayoutBuilder( builder: (context, bodySize) => GestureDetector( onTap: () => FocusScope.of(context).unfocus(), child: Container( decoration: BoxDecoration( image: DecorationImage( image: AssetImage('assets/img/bgImage.png'), // 本地图片 fit: BoxFit.fill, // 填满整个 Container ), ), child: Scaffold( backgroundColor: Colors.transparent, body: SafeArea( top: true, child: Container( height: bodySize.maxHeight, child: Column( mainAxisSize: MainAxisSize.max, children: [ Container( width: double.infinity, decoration: BoxDecoration( color: Colors.transparent, borderRadius: BorderRadius.only( bottomLeft: Radius.circular( AppConstants().normal_container_radius), bottomRight: Radius.circular( AppConstants().normal_container_radius), topLeft: Radius.circular(0.rpx), topRight: Radius.circular(0.rpx), ), ), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 64.rpx, 0, 37.rpx, 0), child: Column( mainAxisSize: MainAxisSize.max, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 65.rpx, 0, 0), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.end, children: [ SvgPicture.asset( 'assets/img/icon/earphone.svg', width: 29.rpx, height: 29.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController.currentColor.sc3, ), // SvgPicture.asset( // 'assets/img/icon/setting.svg', // width: 29.rpx, // height: 29.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 // color: themeController.currentColor.sc3, // ), ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsets .zero, // 这里去掉外部的 padding,避免影响点击范围 onTap: () { Get.toNamed("/settingPage"); }, child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 0.rpx, 0.rpx, 0.rpx), child: SvgPicture.asset( 'assets/img/icon/setting.svg', width: 29.rpx, height: 29 .rpx, // 如果 SVG 中没有固定颜色,使用 color 设置 color: themeController.currentColor.sc3, ), ), ), ].divide(SizedBox(width: 60.rpx)), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 50.rpx, 0, 66.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ Container( width: 120.rpx, height: 120.rpx, clipBehavior: Clip.antiAlias, decoration: BoxDecoration( shape: BoxShape.circle, ), child: Image.network( 'https://picsum.photos/seed/270/600', fit: BoxFit.cover, ), ), Column( mainAxisSize: MainAxisSize.max, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( '张天爱', style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), Text( '账号:135****2598', style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .normal_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(height: 20.rpx)), ), ].divide(SizedBox(width: 35.rpx)), ), CustomCard( borderRadius: 0, onTap: () { Get.toNamed("/updateUserPage"); }, // colors: [themeController.currentColor.sc5], colors: [Colors.transparent], child: Row( mainAxisSize: MainAxisSize.max, children: [ Text( '我的.个人信息'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .normal_text_fontSize, letterSpacing: 0.0, ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 6.rpx, 0, 0.rpx), child: SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 14.rpx, height: 14.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController .currentColor.sc3, ), ), ].divide(SizedBox(width: 16.rpx)), ), ), ], ), ), ], ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 30.rpx, 25.rpx, 30.rpx, 0), child: Container( width: double.infinity, decoration: BoxDecoration( color: Color(0xFF242835), borderRadius: BorderRadius.circular( AppConstants().normal_container_radius), ), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 0, 0.rpx, 0), child: Column( mainAxisSize: MainAxisSize.max, children: [ ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsetsDirectional.fromSTEB( 40.rpx, 0.rpx, 40.rpx, 0.rpx), onTap: () { Get.toNamed("/deviceType",arguments:1); }, child: Container( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 20.rpx, 0.rpx, 20.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ SvgPicture.asset( 'assets/img/icon/my_device.svg', width: 25.rpx, height: 25 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: stringToColor("#00C1AA"), ), Text( '我的.我的设备'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(width: 22.rpx)), ), SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 8.rpx, height: 15.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController.currentColor.sc3, ), ], ), ), ), ), ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 0.rpx, 0.rpx, 0.rpx), onTap: () { print('点击了容器'); }, child: Container( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 40.rpx, 20.rpx, 40.rpx, 20.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ SvgPicture.asset( 'assets/img/icon/device_repair.svg', width: 25.rpx, height: 25 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: stringToColor("#00C1AA"), ), Text( '我的.设备报修'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(width: 22.rpx)), ), SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 8.rpx, height: 15.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController.currentColor.sc3, ), ], ), ), ), ), ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 0.rpx, 0.rpx, 0.rpx), onTap: () { print('点击了容器'); }, child: Container( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 40.rpx, 20.rpx, 40.rpx, 20.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ SvgPicture.asset( 'assets/img/icon/op_ex.svg', width: 25.rpx, height: 25 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: stringToColor("#00C1AA"), ), Text( '我的.操作说明'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(width: 22.rpx)), ), SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 8.rpx, height: 14.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController.currentColor.sc3, ), ], ), ), ), ), ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsetsDirectional.fromSTEB( 40.rpx, 0.rpx, 40.rpx, 0.rpx), onTap: () { print('点击了容器'); }, child: Container( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 20.rpx, 0.rpx, 20.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ SvgPicture.asset( 'assets/img/icon/like.svg', width: 25.rpx, height: 25 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: stringToColor("#00C1AA"), ), Text( '关注我们'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(width: 22.rpx)), ), SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 8.rpx, height: 15.rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController.currentColor.sc3, ), ], ), ), ), ), ClickableContainer( backgroundColor: Colors.transparent, // 容器背景色 highlightColor: themeController .currentColor.sc21, // 点击时的背景色 padding: EdgeInsetsDirectional.fromSTEB( 40.rpx, 0.rpx, 40.rpx, 0.rpx), onTap: () { print('点击了容器'); }, child: Container( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.rpx, 20.rpx, 0.rpx, 20.rpx), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ SvgPicture.asset( 'assets/img/icon/version.svg', width: 25.rpx, height: 25 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: stringToColor("#00C1AA"), ), Text( '我的.当前版本'.tr, style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: themeController .currentColor.sc3, fontSize: AppConstants() .title_text_fontSize, letterSpacing: 0.0, ), ), ].divide(SizedBox(width: 22.rpx)), ), Row( mainAxisSize: MainAxisSize.max, children: [ Text( '1.0.0', style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Inter', color: Color(0xFFD9E3EB), fontSize: 26.rpx, letterSpacing: 0.0, ), ), SvgPicture.asset( 'assets/img/icon/arrow_right.svg', width: 8.rpx, height: 15 .rpx, // 如果 SVG 中没有固定颜色,可以这样设置 color: themeController .currentColor.sc3, ), ].divide(SizedBox(width: 28.rpx)), ), ], ), ), ), ), ] .divide(SizedBox(height: 0.rpx)) .addToStart(SizedBox(height: 30.rpx)) .addToEnd(SizedBox(height: 30.rpx)), ), ), ), ), ], ), ), ), ), ), ), ); } }