Browse Source

修改首页引导页

newdev_shunjiawei
tanlongsheng 1 year ago
parent
commit
532b91f45f
  1. 1
      assets/lottie/intro_foriday.json
  2. 36
      lib/core/widgets/intro_overlay_builder.dart
  3. 4
      lib/data/services/novice_guide_service.dart
  4. 21
      lib/modules/home/views/home_view.dart

1
assets/lottie/intro_foriday.json

File diff suppressed because one or more lines are too long

36
lib/core/widgets/intro_overlay_builder.dart

@ -1,8 +1,44 @@
import 'package:flutter/material.dart';
import 'package:flutter_intro/flutter_intro.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:lottie/lottie.dart';
class IntroOverlayBuilder {
static Widget homeBuilder(
StepWidgetParams params,
bool isWakeup, {
Function? onNext,
}) {
return Column(
children: [
SizedBox(
width: 200.w,
height: 200.w,
child: Lottie.asset('assets/lottie/intro_foriday.json'),
),
Padding(
padding: EdgeInsets.only(bottom: 20.w),
child: Text(
isWakeup ? '我在呢~' : '对着麦克风说:“小言小言”',
style: TextStyle(
fontSize: 15.sp,
color: Colors.white,
fontWeight: FontWeight.bold,
),
),
),
if (onNext != null)
_button(
'下一步',
() {
params.onNext!();
onNext();
},
),
],
);
}
static Widget aiBuilder(
StepWidgetParams params,
String text, {

4
lib/data/services/novice_guide_service.dart

@ -5,9 +5,11 @@ import 'package:get_storage/get_storage.dart';
class NoviceGuideService extends GetxService {
final GetStorage _storage = GetStorage();
bool isHomeGuide = true;
bool isHomeGuide = false;
bool isAIGuide = true;
RxBool isWakeup = false.obs;
int aiStep = 0;
List aiStepsList = [

21
lib/modules/home/views/home_view.dart

@ -114,11 +114,24 @@ class HomeView extends GetView<HomeController> {
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,
);
},
overlayBuilder: (params) {
return IntroOverlayBuilder.aiBuilder(
params,
'对着麦克风说“小言小言”',
onNext: () {},
return Obx(
() => IntroOverlayBuilder.homeBuilder(
params,
controller.noviceGuideService.isWakeup.value,
onNext: () {},
),
);
},
builder: (BuildContext context, GlobalKey key) => SizedBox(

Loading…
Cancel
Save