import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/mine/addLock/lockAddFaq/lockAddFaq_logic.dart'; import '../../../app_settings/app_colors.dart'; import '../../../tools/titleAppBar.dart'; class LockAddFaqPage extends StatefulWidget { const LockAddFaqPage({Key? key}) : super(key: key); @override State createState() => _LockAddFaqPageState(); } class _LockAddFaqPageState extends State { final LockAddFaqLogic logic = Get.put(LockAddFaqLogic()); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, appBar: TitleAppBar( barTitle: '常见问题'.tr, haveBack: true, backgroundColor: AppColors.mainColor, ), body: ListView( padding: EdgeInsets.all(20.w), children: [ // 问题1:蓝牙未开启或未授权 _buildFaqItem( icon: Icons.bluetooth, title: '蓝牙未开启或未授权'.tr, description: '请确保手机蓝牙已开启,并授权App使用蓝牙权限。'.tr, solution: '检查手机设置中的蓝牙权限,确保已授权给App。'.tr, ), SizedBox(height: 20.h), // 问题3:锁电量过低 _buildFaqItem( icon: Icons.battery_alert, title: '锁电量过低'.tr, description: '锁电量过低可能导致无法正常连接和添加。'.tr, solution: '请更换电池后重试。'.tr, ), SizedBox(height: 20.h), // 问题5:锁已被其他用户添加 _buildFaqItem( icon: Icons.person_off, title: '锁已被其他用户添加'.tr, description: '如果锁已被其他用户添加,需要先解除绑定。'.tr, solution: '请联系锁的管理员解除绑定,或使用管理员权限重置锁。'.tr, ), SizedBox(height: 30.h), // 问题6:使用小程序 _buildFaqItem( icon: Icons.phone_android, title: '使用小程序'.tr, description: '如果App无法正常添加锁,可以尝试使用小程序版本。'.tr, solution: '打开微信,搜索“星星锁Lite”小程序,尝试通过小程序添加锁。'.tr, ), // 尝试升级按钮 Container( width: double.infinity, padding: EdgeInsets.symmetric(horizontal: 20.w), child: ElevatedButton.icon( onPressed: logic.startOtaUpgrade, icon: const Icon(Icons.system_update_alt, color: Colors.white), label: Text( '尝试升级固件'.tr, style: TextStyle( color: Colors.white, fontSize: 20.sp, // 保持与项目一致 fontWeight: FontWeight.w500, ), ), style: ElevatedButton.styleFrom( backgroundColor: AppColors.mainColor, padding: EdgeInsets.symmetric(vertical: 15.h), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(25.w), ), elevation: 2, ), ), ), SizedBox(height: 20.h), // 升级说明 Container( padding: EdgeInsets.all(16.w), decoration: BoxDecoration( color: Colors.orange[50], borderRadius: BorderRadius.circular(12.w), border: Border.all(color: Colors.orange[200]!), ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ Icon(Icons.info_outline, color: Colors.orange[700], size: 20.w), SizedBox(width: 8.w), Text( '升级说明'.tr, style: TextStyle( fontSize: 20.sp, // 调整为项目标准 fontWeight: FontWeight.w600, color: Colors.orange[700], ), ), ], ), SizedBox(height: 8.h), Text( '如果以上方法都无法解决问题,可以尝试升级锁的固件。升级前请确保:'.tr, style: TextStyle( fontSize: 18.sp, // 调整为项目标准 color: Colors.orange[800], ), ), SizedBox(height: 8.h), Text( '升级注意事项'.tr, style: TextStyle( fontSize: 16.sp, // 保持与项目一致 color: Colors.orange[800], height: 1.4, ), ), ], ), ), ], ), ); } Widget _buildFaqItem({ required IconData icon, required String title, required String description, required String solution, }) { return Container( padding: EdgeInsets.all(16.w), decoration: BoxDecoration( color: Colors.grey[50], borderRadius: BorderRadius.circular(12.w), border: Border.all(color: Colors.grey[200]!), ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ Container( width: 40.w, height: 40.w, decoration: BoxDecoration( color: AppColors.mainColor.withOpacity(0.1), borderRadius: BorderRadius.circular(20.w), ), child: Icon( icon, color: AppColors.mainColor, size: 24.w, ), ), SizedBox(width: 12.w), Expanded( child: Text( title, style: TextStyle( fontSize: 22.sp, // 调整为项目标准 fontWeight: FontWeight.w600, color: Colors.black87, ), ), ), ], ), SizedBox(height: 12.h), Text( description, style: TextStyle( fontSize: 20.sp, // 调整为项目标准 color: Colors.black54, height: 1.4, ), ), SizedBox(height: 8.h), Container( padding: EdgeInsets.all(12.w), decoration: BoxDecoration( color: AppColors.mainColor.withOpacity(0.05), borderRadius: BorderRadius.circular(8.w), border: Border.all(color: AppColors.mainColor.withOpacity(0.2)), ), child: Row( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center, children: [ Icon( Icons.lightbulb_outline, color: AppColors.mainColor, size: 20.w, ), SizedBox(width: 8.w), Expanded( child: Text( solution, style: TextStyle( fontSize: 18.sp, // 调整为项目标准 color: AppColors.mainColor, fontWeight: FontWeight.w500, height: 1.4, ), ), ), ], ), ), ], ), ); } }