diff --git a/README.md b/README.md index 146d7e8..5d41834 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,25 @@ -# dating_touchme_app +## Build Runner 使用说明 +Build Runner 是一个代码生成工具,用于自动化生成 Dart 代码。在本项目中,我们使用 build_runner 来处理各种代码生成功能,如 JSON 序列化、依赖注入等。 + +### 基本用法 + +flutter pub run build_runner build + +这个命令会运行一次构建过程,生成所有必要的代码文件。 + +### 开发模式 + +在开发过程中,如果你希望在文件更改时自动重新生成代码,可以使用 watch 模式: + +flutter pub run build_runner watch + +这将启动一个监听器,当相关文件发生变化时自动重新构建生成的代码。 + +### 常用参数 + +- `--delete-conflicting-outputs`: 删除与生成器输出冲突的文件 +- `--build-filter`: 只构建匹配指定 glob 的文件 + +例如: +flutter pub run build_runner build --delete-conflicting-outputs diff --git a/assets/images/add.png b/assets/images/add.png new file mode 100644 index 0000000..7a49bd0 Binary files /dev/null and b/assets/images/add.png differ diff --git a/assets/images/audio.png b/assets/images/audio.png new file mode 100644 index 0000000..0fd36c2 Binary files /dev/null and b/assets/images/audio.png differ diff --git a/assets/images/emoji.png b/assets/images/emoji.png new file mode 100644 index 0000000..6975beb Binary files /dev/null and b/assets/images/emoji.png differ diff --git a/assets/images/gift.png b/assets/images/gift.png new file mode 100644 index 0000000..d83151b Binary files /dev/null and b/assets/images/gift.png differ diff --git a/assets/images/more.png b/assets/images/more.png new file mode 100644 index 0000000..3e64142 Binary files /dev/null and b/assets/images/more.png differ diff --git a/assets/images/video.png b/assets/images/video.png new file mode 100644 index 0000000..f991d8d Binary files /dev/null and b/assets/images/video.png differ diff --git a/lib/generated/assets.dart b/lib/generated/assets.dart index 9dd91ed..6589aef 100644 --- a/lib/generated/assets.dart +++ b/lib/generated/assets.dart @@ -2,7 +2,9 @@ class Assets { Assets._(); + static const String imagesAdd = 'assets/images/add.png'; static const String imagesArrowForwardRight = 'assets/images/arrow_forward_right.png'; + static const String imagesAudio = 'assets/images/audio.png'; static const String imagesAvatarsExample = 'assets/images/avatars_example.png'; static const String imagesBackIcon = 'assets/images/back_icon.png'; static const String imagesBgEditAvatars = 'assets/images/bg_edit_avatars.png'; @@ -11,7 +13,9 @@ class Assets { static const String imagesDiscoverNol = 'assets/images/discover_nol.png'; static const String imagesDiscoverPre = 'assets/images/discover_pre.png'; static const String imagesEditAvatarsIcon = 'assets/images/edit_avatars_icon.png'; + static const String imagesEmoji = 'assets/images/emoji.png'; static const String imagesExampleContent = 'assets/images/example_content.png'; + static const String imagesGift = 'assets/images/gift.png'; static const String imagesHiIcon = 'assets/images/hi_icon.png'; static const String imagesHomeNol = 'assets/images/home_nol.png'; static const String imagesHomePre = 'assets/images/home_pre.png'; @@ -24,6 +28,7 @@ class Assets { static const String imagesMessagePre = 'assets/images/message_pre.png'; static const String imagesMineNol = 'assets/images/mine_nol.png'; static const String imagesMinePre = 'assets/images/mine_pre.png'; + static const String imagesMore = 'assets/images/more.png'; static const String imagesMoreIcon = 'assets/images/more_icon.png'; static const String imagesOnlineIcon = 'assets/images/online_icon.png'; static const String imagesPlayIcon = 'assets/images/play_icon.png'; @@ -32,6 +37,7 @@ class Assets { static const String imagesTabChangeIcon = 'assets/images/tab_change_icon.png'; static const String imagesTalkIcon = 'assets/images/talk_icon.png'; static const String imagesVerifiedIcon = 'assets/images/verified_icon.png'; + static const String imagesVideo = 'assets/images/video.png'; static const String imagesVoiceIcon = 'assets/images/voice_icon.png'; static const String imagesWomenIcon = 'assets/images/women_icon.png'; diff --git a/lib/pages/message/chat_page.dart b/lib/pages/message/chat_page.dart new file mode 100644 index 0000000..165c8b6 --- /dev/null +++ b/lib/pages/message/chat_page.dart @@ -0,0 +1,45 @@ +import 'package:dating_touchme_app/extension/ex_widget.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; + +import '../../generated/assets.dart'; + +class ChatPage extends StatefulWidget { + + String userId; + + ChatPage({required this.userId, super.key}); + + @override + State createState() => _ChatPageState(); +} + +class _ChatPageState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text("Chat"), + centerTitle: true, + actions: [ + Container( + padding: EdgeInsets.only(right: 16.w), + child: Image.asset(Assets.imagesMore, width: 16.w,), + ).onTap(() { + + }) + ], + leading: IconButton( + icon: Icon(Icons.arrow_back_ios), + onPressed: () { + Get.back(); + }, + ), + ), + body: Container( + + ), + ); + } +} diff --git a/lib/pages/message/conversation_tab.dart b/lib/pages/message/conversation_tab.dart index c0b9d63..01cbd75 100644 --- a/lib/pages/message/conversation_tab.dart +++ b/lib/pages/message/conversation_tab.dart @@ -1,5 +1,6 @@ import 'package:dating_touchme_app/extension/ex_widget.dart'; import 'package:dating_touchme_app/im/im_manager.dart'; +import 'package:dating_touchme_app/pages/message/chat_page.dart'; import 'package:flutter/material.dart'; import 'package:dating_touchme_app/generated/assets.dart'; import 'package:get/get.dart'; @@ -151,7 +152,7 @@ class _ConversationTabState extends State with AutomaticKeepAli int unreadCount = snapshot.data ?? 0; return GestureDetector( onTap: () async{ - await IMManager.instance.sendTextMessage('来了', conversation.id); + Get.to(ChatPage(userId: conversation.id)); }, child: Container( padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12),