From ef5545db0e3a0515dccdd4d7966088f32ae50ad2 Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Wed, 14 May 2025 15:34:20 +0800 Subject: [PATCH] =?UTF-8?q?style(agent=5Fview):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=AF=AD=E9=9F=B3/=E6=96=87=E5=AD=97=E8=BE=93=E5=85=A5?= =?UTF-8?q?=E6=8E=A7=E4=BB=B6=E9=AB=98=E5=BA=A6=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/modules/agent/views/agent_view.dart | 66 ++++++++++++++----------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/lib/modules/agent/views/agent_view.dart b/lib/modules/agent/views/agent_view.dart index 592df110e..f32a0caee 100644 --- a/lib/modules/agent/views/agent_view.dart +++ b/lib/modules/agent/views/agent_view.dart @@ -14,15 +14,14 @@ class AgentView extends StatelessWidget { final primaryColor = theme.primaryColor; final backgroundColor = theme.scaffoldBackgroundColor; final isDarkMode = Theme.of(context).brightness == Brightness.dark; - + return Scaffold( appBar: AppBar( elevation: 1, backgroundColor: backgroundColor, leading: IconButton( - icon: Icon(Icons.arrow_back_ios, - color: isDarkMode ? Colors.white : Colors.black87, - size: 20), + icon: Icon(Icons.arrow_back_ios, + color: isDarkMode ? Colors.white : Colors.black87, size: 20), onPressed: () => Get.back(), ), titleSpacing: 0, @@ -88,26 +87,27 @@ class AgentView extends StatelessWidget { actions: [ // TTS开关 Obx(() => IconButton( - icon: Icon( - controller.isTtsEnabled.value - ? Icons.volume_up - : Icons.volume_off, - color: controller.isTtsEnabled.value - ? primaryColor - : isDarkMode - ? Colors.grey[400] - : Colors.grey, - ), - onPressed: () => controller.toggleTts(), - )), - + icon: Icon( + controller.isTtsEnabled.value + ? Icons.volume_up + : Icons.volume_off, + color: controller.isTtsEnabled.value + ? primaryColor + : isDarkMode + ? Colors.grey[400] + : Colors.grey, + ), + onPressed: () => controller.toggleTts(), + )), + // 更多选项 Container( width: 34, height: 34, margin: const EdgeInsets.only(right: 8), decoration: BoxDecoration( - color: isDarkMode ? Colors.white.withOpacity(0.1) : Colors.grey[100], + color: + isDarkMode ? Colors.white.withOpacity(0.1) : Colors.grey[100], shape: BoxShape.circle, boxShadow: [ if (!isDarkMode) @@ -119,9 +119,8 @@ class AgentView extends StatelessWidget { ], ), child: PopupMenuButton( - icon: Icon(Icons.more_vert, - color: isDarkMode ? Colors.white : Colors.black87, - size: 20), + icon: Icon(Icons.more_vert, + color: isDarkMode ? Colors.white : Colors.black87, size: 20), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(12), ), @@ -153,10 +152,12 @@ class AgentView extends StatelessWidget { () => ListView.builder( controller: controller.scrollController, reverse: true, - padding: const EdgeInsets.symmetric(vertical: 16, horizontal: 16), + padding: + const EdgeInsets.symmetric(vertical: 16, horizontal: 16), itemCount: controller.messages.length, itemBuilder: (context, index) { - final message = controller.messages[controller.messages.length - 1 - index]; + final message = controller + .messages[controller.messages.length - 1 - index]; return Padding( padding: const EdgeInsets.only(bottom: 8), child: MessageBubble( @@ -307,6 +308,7 @@ class AgentView extends StatelessWidget { if (isTextMode) { // 文本输入模式 - 注意观察图片模式时的高度变化 return Container( + height: 44, padding: const EdgeInsets.symmetric(horizontal: 16), decoration: BoxDecoration( color: Colors.grey[200], @@ -330,7 +332,9 @@ class AgentView extends StatelessWidget { minLines: isImageActive ? 2 : 1, style: TextStyle( fontSize: 15, - color: isDarkMode ? Colors.white : Colors.black87, + color: isDarkMode + ? Colors.white + : Colors.black87, ), decoration: InputDecoration( hintText: isImageActive @@ -470,7 +474,8 @@ class AgentView extends StatelessWidget { Icon(Icons.camera_alt, color: primaryColor, size: 20), const SizedBox(width: 8), - const Text('拍照', style: TextStyle(fontSize: 14)), + const Text('拍照', + style: TextStyle(fontSize: 14)), ], ), ), @@ -481,7 +486,8 @@ class AgentView extends StatelessWidget { Icon(Icons.photo_library, color: primaryColor, size: 20), const SizedBox(width: 8), - const Text('从相册选择', style: TextStyle(fontSize: 14)), + const Text('从相册选择', + style: TextStyle(fontSize: 14)), ], ), ), @@ -506,7 +512,7 @@ class AgentView extends StatelessWidget { }) { final theme = Theme.of(context); final primaryColor = theme.primaryColor; - + return GestureDetector( onTap: onTap, child: Container( @@ -614,14 +620,14 @@ class _SoundBarState extends State<_SoundBar> @override Widget build(BuildContext context) { final primaryColor = Theme.of(context).primaryColor; - + return Container( width: 2.5, height: widget.isActive ? _animation.value : 3, margin: const EdgeInsets.symmetric(horizontal: 1), decoration: BoxDecoration( - color: widget.isActive - ? primaryColor.withOpacity(0.8) + color: widget.isActive + ? primaryColor.withOpacity(0.8) : Colors.grey.withOpacity(0.4), borderRadius: BorderRadius.circular(1.5), ),