diff --git a/lib/core/widgets/intro_overlay_builder.dart b/lib/core/widgets/intro_overlay_builder.dart index fec06693e..6b503bb69 100644 --- a/lib/core/widgets/intro_overlay_builder.dart +++ b/lib/core/widgets/intro_overlay_builder.dart @@ -4,6 +4,18 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:lottie/lottie.dart'; class IntroOverlayBuilder { + static OverlayPosition overlayPosition({ + required Offset offset, + required Size screenSize, + required Size size, + }) { + return OverlayPosition( + top: ScreenUtil().statusBarHeight, + width: screenSize.width, + crossAxisAlignment: CrossAxisAlignment.center, + ); + } + static Widget homeBuilder( StepWidgetParams params, bool isWakeup, { @@ -12,6 +24,18 @@ class IntroOverlayBuilder { }) { return Column( children: [ + Container( + padding: EdgeInsetsGeometry.all(12.w), + alignment: Alignment.centerRight, + child: _button( + '跳过', + () { + params.onFinish(); + }, + isSkip: true, + ), + ), + 100.verticalSpace, isWakeup ? _AnimatedLottieWidget() : SizedBox( @@ -31,27 +55,12 @@ class IntroOverlayBuilder { ), ), if (onNext != null) - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Padding( - padding: EdgeInsets.only(right: 50.w), - child: _button( - '下一步', - () { - params.onNext!(); - onNext(); - }, - ), - ), - _button( - '跳过', - () { - params.onFinish(); - }, - isSkip: true, - ), - ], + _button( + '下一步', + () { + params.onNext!(); + onNext(); + }, ), ], ); diff --git a/lib/modules/agent/views/agent_view.dart b/lib/modules/agent/views/agent_view.dart index dc39fe3c8..92586db1f 100644 --- a/lib/modules/agent/views/agent_view.dart +++ b/lib/modules/agent/views/agent_view.dart @@ -196,17 +196,7 @@ class _AgentViewState extends State with WidgetsBindingObserver { IntroStepBuilder( group: 'ai', order: 3, - getOverlayPosition: ({ - required Offset offset, - required Size screenSize, - required Size size, - }) { - return OverlayPosition( - top: 200.h, - width: screenSize.width, - crossAxisAlignment: CrossAxisAlignment.end, - ); - }, + getOverlayPosition: IntroOverlayBuilder.overlayPosition, overlayBuilder: (params) { return Obx( () => IntroOverlayBuilder.homeBuilder( diff --git a/lib/modules/home/views/home_view.dart b/lib/modules/home/views/home_view.dart index 1ff190e8f..bbcd78dae 100644 --- a/lib/modules/home/views/home_view.dart +++ b/lib/modules/home/views/home_view.dart @@ -120,17 +120,7 @@ class HomeView extends GetView { IntroStepBuilder( group: 'home', order: 2, - getOverlayPosition: ({ - required Offset offset, - required Size screenSize, - required Size size, - }) { - return OverlayPosition( - top: 200.h, - width: screenSize.width, - crossAxisAlignment: CrossAxisAlignment.end, - ); - }, + getOverlayPosition: IntroOverlayBuilder.overlayPosition, overlayBuilder: (params) { return Obx( () => IntroOverlayBuilder.homeBuilder(