Browse Source

添加会议笔记页面

weicu
tanlongsheng 2 years ago
parent
commit
35cb5361e6
  1. 21
      lib/modules/explore/controllers/explore_controller.dart
  2. 10
      lib/modules/meeting/bindings/meeting_binding.dart
  3. 3
      lib/modules/meeting/controllers/meeting_controller.dart
  4. 18
      lib/modules/meeting/views/meeting_view.dart
  5. 3
      lib/modules/settings/views/settings_view.dart
  6. 8
      lib/routes/app_pages.dart
  7. 1
      lib/routes/app_routes.dart

21
lib/modules/explore/controllers/explore_controller.dart

@ -34,6 +34,7 @@ class FunctionScene {
final Color startColor;
final Color endColor;
final Color iconColor;
final String targetRoute;
FunctionScene({
required this.title,
@ -42,6 +43,7 @@ class FunctionScene {
required this.startColor,
required this.endColor,
required this.iconColor,
required this.targetRoute,
});
}
@ -106,6 +108,7 @@ class ExploreController extends GetxController {
startColor: const Color(0xFF3F51B5),
endColor: const Color(0xFF673AB7),
iconColor: const Color(0xFF3F51B5),
targetRoute: Routes.meeting,
),
FunctionScene(
title: 'studyAssistant'.tr, // 语言学习助手
@ -114,6 +117,7 @@ class ExploreController extends GetxController {
startColor: const Color(0xFF4CAF50),
endColor: const Color(0xFF009688),
iconColor: const Color(0xFF4CAF50),
targetRoute: '',
),
FunctionScene(
title: 'travelTranslator'.tr, // 旅行翻译助手
@ -122,6 +126,7 @@ class ExploreController extends GetxController {
startColor: const Color(0xFFFFC107),
endColor: const Color(0xFFFF9800),
iconColor: const Color(0xFFFFC107),
targetRoute: '',
),
];
@ -177,13 +182,17 @@ class ExploreController extends GetxController {
void onFunctionSceneTap(int index) {
if (index < 0 || index >= functionScenes.length) return;
Get.snackbar(
'scene'.tr, // 场景
'${'youHaveSelected'.tr} ${functionScenes[index].title}', // 您选择了:
snackPosition: SnackPosition.TOP,
);
final scene = functionScenes[index];
// 实际应用中,这里应该跳转到对应的场景页面
if (scene.targetRoute.isNotEmpty) {
Get.toNamed(scene.targetRoute);
} else {
Get.snackbar(
'scene'.tr, // 场景
'${'youHaveSelected'.tr} ${functionScenes[index].title}', // 您选择了:
snackPosition: SnackPosition.TOP,
);
}
}
// 尝试新功能

10
lib/modules/meeting/bindings/meeting_binding.dart

@ -0,0 +1,10 @@
import 'package:get/get.dart';
import '../controllers/meeting_controller.dart';
class MeetingBinding extends Bindings {
@override
void dependencies() {
// 注册控制器
Get.lazyPut<MeetingController>(() => MeetingController());
}
}

3
lib/modules/meeting/controllers/meeting_controller.dart

@ -0,0 +1,3 @@
import 'package:get/get.dart';
class MeetingController extends GetxController {}

18
lib/modules/meeting/views/meeting_view.dart

@ -0,0 +1,18 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import '../../../core/theme/app_colors.dart';
import '../controllers/meeting_controller.dart';
class MeetingView extends GetView<MeetingController> {
const MeetingView({super.key});
@override
Widget build(BuildContext context) {
final isDarkMode = Theme.of(context).brightness == Brightness.dark;
return Scaffold(
backgroundColor: isDarkMode ? AppColors.darkBackground : Colors.grey[50],
);
}
}

3
lib/modules/settings/views/settings_view.dart

@ -1,3 +1,4 @@
import 'package:app_settings/app_settings.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
@ -321,7 +322,7 @@ class SettingsView extends GetView<SettingsController> {
titleColor: isDarkMode ? Colors.white : null,
subtitleColor: isDarkMode ? Colors.white70 : null,
onTap: () {
// 打开隐私设置页面
AppSettings.openAppSettings();
},
isDarkMode: isDarkMode,
),

8
lib/routes/app_pages.dart

@ -3,6 +3,8 @@ import '../modules/home/views/home_view.dart';
import '../modules/home/bindings/home_binding.dart';
import '../modules/explore/views/explore_view.dart';
import '../modules/explore/bindings/explore_binding.dart';
import '../modules/meeting/bindings/meeting_binding.dart';
import '../modules/meeting/views/meeting_view.dart';
import '../modules/profile/views/profile_view.dart';
import '../modules/profile/bindings/profile_binding.dart';
import '../modules/chat/bindings/chat_binding.dart';
@ -64,7 +66,6 @@ abstract class AppPages {
page: () => const ProfileView(),
binding: ProfileBinding(),
),
GetPage(
name: Routes.translation,
page: () => const TranslationView(),
@ -75,6 +76,11 @@ abstract class AppPages {
page: () => const TranslationHistoryView(),
binding: TranslationHistoryBinding(),
),
GetPage(
name: Routes.meeting,
page: () => const MeetingView(),
binding: MeetingBinding(),
),
GetPage(
name: Routes.settings,
page: () => const SettingsView(),

1
lib/routes/app_routes.dart

@ -7,6 +7,7 @@ abstract class Routes {
static const explore = '/explore';
static const chat = '/chat';
static const profile = '/profile';
static const meeting = '/meeting';
static const settings = '/settings';
static const speechDemo = '/speech_demo';
static const TTS_TEST = '/tts_test';

Loading…
Cancel
Save