import 'package:ef/base/widget/flutterflow/FlutterFlowTheme.dart'; import 'package:ef/ef.dart'; import 'package:flutter/material.dart'; import 'package:EasyDartModule/EasyDartModule.dart' as edm; import 'package:get/get.dart'; import 'package:vbvs_app/common/color/app_uri_status.dart'; import 'package:vbvs_app/common/util/DailyLogUtils.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/component/tool/TopSlideNotification.dart'; import 'package:vbvs_app/model/api_response.dart'; import '../../controller/mh_controller/muser_info_controller.dart'; class EditUserInfoPage extends GetView { final scaffoldKey = GlobalKey(); @override Widget build(BuildContext context) { // UserInfoController controller = Get.find(); MUserInfoController userInfoController = Get.find(); return GestureDetector( onTap: () => FocusScope.of(context).unfocus(), child: Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage('assets/images/new_background.png'), // 本地图片 fit: BoxFit.fill, // 填满整个 Container ), ), child: Scaffold( backgroundColor: Colors.transparent, key: scaffoldKey, appBar: AppBar( backgroundColor: Colors.transparent, automaticallyImplyLeading: false, iconTheme: IconThemeData(color: Colors.white), titleSpacing: 0, title: Container( width: double.infinity, height: 70.rpx, child: Stack( alignment: Alignment.center, children: [ // 中间居中的标题 Text( '编辑资料', textAlign: TextAlign.center, style: TextStyle( color: Colors.white, fontSize: 30.rpx, ), ), // 左侧图标 Positioned( left: 20.rpx, child: returnIconButtomNew, ), Positioned( right: 30.rpx, child: CustomCard( borderRadius: 16.rpx, gradientDirection: GradientDirection.vertical, onTap: () {}, colors: const [ Color(0xFFFCFCFC), Color(0xFFF8FAF9), Color(0XFFECF6F3), Color(0XFFD9F0E9), Color(0xFFCEECE3) ], child: Container( width: 120.rpx, height: 60.rpx, alignment: Alignment.center, // decoration: BoxDecoration( // borderRadius: BorderRadius.circular(5), // color: stringToColor("#182B7C"), // ), child: Text( "保存", style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: stringToColor("#9EA4B7"), letterSpacing: 0, fontSize: 30.rpx, ), ), ), )) ], ), ), centerTitle: false, ), body: Container( width: double.infinity, child: Column( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.start, children: [ Padding( padding: EdgeInsets.only(top: 108.rpx), child: Container( width: 160.rpx, height: 160.rpx, clipBehavior: Clip.antiAlias, decoration: const BoxDecoration( shape: BoxShape.circle, ), child: Image.asset( "assets/images/people_avatar.png", fit: BoxFit.cover, ), ), ), ClickableContainer( backgroundColor: Colors.transparent, highlightColor: Colors.transparent, padding: EdgeInsets.only(top: 44.rpx, bottom: 44.rpx), onTap: () async { edm.EasyDartModule.logger .info("${userInfoController.model.user!}点击上传头像"); DailyLogUtils.writeLog( "${userInfoController.model.user!}点击上传头像"); ApiResponse apiResponse = await userInfoController.uploadImg(); TopSlideNotification.show( context, text: apiResponse.msg!, textColor: apiResponse.code == HttpStatusCodes.ok ? themeController.currentColor.sc2 : themeController.currentColor.sc9, ); }, child: Text( '点击更换头像', style: TextStyle(color: Color(0XFF85F5FF), fontSize: 26.rpx), ), ), Padding( padding: EdgeInsets.fromLTRB(60.rpx, 78.rpx, 60.rpx, 0.rpx), child: Container( width: double.infinity, height: 88.rpx, decoration: BoxDecoration( border: Border( top: BorderSide( color: Color(0xFFD3D3D3), width: 2.rpx), // 上边线 bottom: BorderSide( color: Color(0xFFD3D3D3), width: 2.rpx), // 下边线 ), ), alignment: Alignment(0, 0), child: TextField( obscureText: false, keyboardType: TextInputType.text, textInputAction: TextInputAction.done, textAlign: TextAlign.center, style: TextStyle(fontSize: 30.rpx, color: Colors.white), decoration: InputDecoration( fillColor: Colors.transparent, filled: true, hintText: "请输入昵称", hintStyle: TextStyle(color: Colors.white), border: InputBorder.none, contentPadding: EdgeInsets.only(bottom: 10.rpx)), onChanged: (value) { controller.model.user?.nickName = value; controller.updateAll(); }, controller: controller.onReDraw( TextEditingController( text: controller.model.user?.nickName ?? ""), (textEditingController) { textEditingController.text = controller.model.user?.nickName ?? ""; }), ), // Text( // '玛利亚', // style: TextStyle( // color: Color(0XFFFFFFFF), fontSize: 26.rpx), // ), ), ), ], ), ), ), )); } Widget getImageWidget(BuildContext context) { try { MUserInfoController controller = Get.find(); var head = controller.model.user!.tmpHead; return Container( width: 200.rpx, height: 200.rpx, child: Container( clipBehavior: Clip.antiAlias, decoration: BoxDecoration( shape: BoxShape.circle, ), child: head == null || head.isEmpty ? Image.asset( 'assets/img/avatar.png', fit: BoxFit.cover, ) : Image.network( head, fit: BoxFit.cover, ), ), ); } catch (e) { print(e); } return Container(); } }