From 302f37e10083cd399bab135e8bdcc96fdb8fa394 Mon Sep 17 00:00:00 2001 From: mmc <1556375442@qq.com> Date: Tue, 10 Mar 2026 17:22:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E6=89=93=E7=82=B9?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=92=A4=E5=9B=9E=E7=9A=84=E7=82=B9=E5=87=BB?= =?UTF-8?q?=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/widgets/startpoint_area.dart | 52 ++++++++++++------- 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/lib/features/home/presentation/widgets/startpoint_area.dart b/lib/features/home/presentation/widgets/startpoint_area.dart index e1efc38c..fd4698c6 100644 --- a/lib/features/home/presentation/widgets/startpoint_area.dart +++ b/lib/features/home/presentation/widgets/startpoint_area.dart @@ -165,11 +165,20 @@ class _BottomOperationPanelState extends State { widget.onAddTap?.call(); }, - child: Container( - width: 40, - height: 40, - decoration: const BoxDecoration(color: Color(0xFF00C853), shape: BoxShape.circle), - child: const Icon(Icons.add, color: Colors.white, size: 32), + child: Material( + color: Colors.transparent, + shape: const CircleBorder(), + child: InkWell( + customBorder: const CircleBorder(), + splashColor: Colors.white24, + highlightColor: Colors.white10, + child: Ink( + width: 40, + height: 40, + decoration: const BoxDecoration(color: Color(0xFF00C853), shape: BoxShape.circle), + child: const Icon(Icons.add, color: Colors.white, size: 32), + ), + ), ), ), if (widget.initialWorkMode == WorkMode.bow) @@ -297,20 +306,27 @@ class _BottomOperationPanelState extends State { // 构建操作按钮 Widget _buildActionButton(IconData icon, String label, bool isEnabled, VoidCallback onTap) { - return GestureDetector( - onTap: isEnabled ? onTap : null, - child: Column( - children: [ - Container( - width: 40, - height: 40, - decoration: BoxDecoration(color: isEnabled ? Colors.blue : Colors.grey[300], shape: BoxShape.circle), - child: Icon(icon, color: Colors.white), + return Column( + children: [ + Material( + color: Colors.transparent, + shape: const CircleBorder(), + child: InkWell( + onTap: isEnabled ? onTap : null, // 关键 + customBorder: const CircleBorder(), + splashColor: isEnabled ? null : Colors.transparent, + highlightColor: Colors.transparent, + child: Ink( + width: 40, + height: 40, + decoration: BoxDecoration(color: isEnabled ? Colors.blue : Colors.grey[300], shape: BoxShape.circle), + child: Icon(icon, color: isEnabled ? Colors.white : Colors.grey), + ), ), - const SizedBox(height: 6), - Text(label, style: TextStyle(color: isEnabled ? Colors.black : Colors.grey)), - ], - ), + ), + const SizedBox(height: 6), + Text(label, style: TextStyle(color: isEnabled ? Colors.black : Colors.grey)), + ], ); } }