Sfoglia il codice sorgente

[feat]键盘引导页,扩大点击范围,增加一句引导词,第一句不需要复制

hezihao 7 mesi fa
parent
commit
e9a0ed5302

+ 3 - 2
assets/string/base/string.xml

@@ -265,7 +265,8 @@
     </string>
     <string name="keyboard_guide_ta_reply2">你睡了吗?</string>
     <string name="keyboard_guide_ta_reply3">我先去吃饭了,一会聊</string>
-    <string name="keyboard_guide_ta_reply4">去调节亲密度,查看吃定Ta的人设</string>
+    <string name="keyboard_guide_ta_reply4">我去洗澡了</string>
+    <string name="keyboard_guide_ta_reply5">去调节亲密度,查看吃定Ta的人设</string>
 
     <string name="intimacy_analyse_tab_report">亲密分析报告</string>
     <string name="intimacy_analyse_tab_screenshot_reply">截图回复</string>
@@ -399,7 +400,7 @@
     <string name="logout_dialog_desc">确定退出登录吗?</string>
 
     <string name="skip">跳过</string>
-    <string name="copy_success">复制成功</string>
+    <string name="copy_success">复制</string>
     <string name="new_user_gender_title">Hi,欢迎来到追爱小键盘</string>
     <string name="new_user_gender_desc">您的性别是?</string>
     <string name="new_user_birthday_title">生日</string>

+ 10 - 2
lib/module/keyboard_guide/keyboard_guide_controller.dart

@@ -117,7 +117,7 @@ class KeyboardGuidePageController extends BaseController {
       KeyboardGuideMsg(
         false,
         StringName.keyboardGuideTaReply1,
-        KeyboardGuideMsgType.copy.type,
+        KeyboardGuideMsgType.normal.type,
         DateTime.now().millisecond,
       ),
     );
@@ -137,11 +137,19 @@ class KeyboardGuidePageController extends BaseController {
         DateTime.now().millisecond,
       ),
     );
-    // 亲密度设置的引导消息
     msgList.add(
       KeyboardGuideMsg(
         false,
         StringName.keyboardGuideTaReply4,
+        KeyboardGuideMsgType.copy.type,
+        DateTime.now().millisecond,
+      ),
+    );
+    // 亲密度设置的引导消息
+    msgList.add(
+      KeyboardGuideMsg(
+        false,
+        StringName.keyboardGuideTaReply5,
         KeyboardGuideMsgType.intimacySetting.type,
         DateTime.now().millisecond,
       ),

+ 41 - 39
lib/module/keyboard_guide/keyboard_guide_page.dart

@@ -286,32 +286,47 @@ class KeyboardGuidePage extends BasePage<KeyboardGuidePageController> {
           color: msg.isMe ? ColorName.msgBubbleMe : ColorName.msgBubbleTa,
           borderRadius: bgBorderRadius,
         ),
-        child: Row(
-          // 宽高包裹内容
-          mainAxisSize: MainAxisSize.min,
-          // 图标和文本,垂直居中
-          crossAxisAlignment: CrossAxisAlignment.center,
-          children: [
-            Flexible(
-              // 消息文本
-              child: Text(
-                msg.content,
-                style: TextStyle(
-                  fontSize: 14.0,
-                  color: ColorName.black80,
-                  fontWeight: FontWeight.w500,
-                  height: 1.5,
+        child: GestureDetector(
+          onTap: () {
+            // 复制内容到剪切板
+            if (msg.type == KeyboardGuideMsgType.copy.type) {
+              ClipboardUtil.copyToClipboard(msg.content);
+              ToastUtil.show(StringName.copySuccess);
+            } else if (msg.type == KeyboardGuideMsgType.intimacySetting.type) {
+              // 跳转到亲密度设置页
+              IntimacyScalePage.start();
+            }
+          },
+          child: Row(
+            // 宽高包裹内容
+            mainAxisSize: MainAxisSize.min,
+            // 图标和文本,垂直居中
+            crossAxisAlignment: CrossAxisAlignment.center,
+            children: [
+              Flexible(
+                // 消息文本
+                child: Text(
+                  msg.content,
+                  style: TextStyle(
+                    fontSize: 14.0,
+                    color: ColorName.black80,
+                    fontWeight: FontWeight.w500,
+                    height: 1.5,
+                  ),
+                  softWrap: true,
                 ),
-                softWrap: true,
               ),
-            ),
-            // 只有对方发送的,才有操作按钮
-            if (!msg.isMe)
-              Padding(
-                padding: EdgeInsets.only(left: 8.0),
-                child: _buildMsgActionBtn(msg),
-              ),
-          ],
+              // 只有对方发送的,才有操作按钮
+              if (!msg.isMe)
+                Visibility(
+                  visible: msg.type != KeyboardGuideMsgType.normal.type,
+                  child: Padding(
+                    padding: EdgeInsets.only(left: 8.0),
+                    child: _buildMsgActionBtn(msg),
+                  ),
+                ),
+            ],
+          ),
         ),
       ),
     );
@@ -320,22 +335,9 @@ class KeyboardGuidePage extends BasePage<KeyboardGuidePageController> {
   /// 消息操作按钮
   Widget _buildMsgActionBtn(KeyboardGuideMsg msg) {
     if (msg.type == KeyboardGuideMsgType.copy.type) {
-      return GestureDetector(
-        onTap: () {
-          // 复制内容到剪切板
-          ClipboardUtil.copyToClipboard(msg.content);
-          ToastUtil.show(StringName.copySuccess);
-        },
-        child: Assets.images.iconCopy.image(width: 18.w, height: 18.w),
-      );
+      return Assets.images.iconCopy.image(width: 18.w, height: 18.w);
     } else if (msg.type == KeyboardGuideMsgType.intimacySetting.type) {
-      return GestureDetector(
-        onTap: () {
-          // 跳转到亲密度设置页
-          IntimacyScalePage.start();
-        },
-        child: Assets.images.iconSetting.image(width: 18.w, height: 18.w),
-      );
+      return Assets.images.iconSetting.image(width: 18.w, height: 18.w);
     } else {
       return SizedBox.shrink();
     }

+ 6 - 4
lib/resource/string.gen.dart

@@ -194,7 +194,8 @@ class StringName {
   static final String keyboardGuideTaReply1 = 'keyboard_guide_ta_reply1'.tr; // 👋 欢迎使用【追爱小键盘】\n复制任意一句对话,点击人设体验回复
   static final String keyboardGuideTaReply2 = 'keyboard_guide_ta_reply2'.tr; // 你睡了吗?
   static final String keyboardGuideTaReply3 = 'keyboard_guide_ta_reply3'.tr; // 我先去吃饭了,一会聊
-  static final String keyboardGuideTaReply4 = 'keyboard_guide_ta_reply4'.tr; // 去调节亲密度,查看吃定Ta的人设
+  static final String keyboardGuideTaReply4 = 'keyboard_guide_ta_reply4'.tr; // 我去洗澡了
+  static final String keyboardGuideTaReply5 = 'keyboard_guide_ta_reply5'.tr; // 去调节亲密度,查看吃定Ta的人设
   static final String intimacyAnalyseTabReport = 'intimacy_analyse_tab_report'.tr; // 亲密分析报告
   static final String intimacyAnalyseTabScreenshotReply = 'intimacy_analyse_tab_screenshot_reply'.tr; // 截图回复
   static final String intimacyAnalyseTabConversationAnalysis = 'intimacy_analyse_tab_conversation_analysis'.tr; // 对话分析
@@ -290,7 +291,7 @@ class StringName {
   static final String logoutDialogConfirm = 'logout_dialog_confirm'.tr; // 确认
   static final String logoutDialogDesc = 'logout_dialog_desc'.tr; // 确定退出登录吗?
   static final String skip = 'skip'.tr; // 跳过
-  static final String copySuccess = 'copy_success'.tr; // 复制成功
+  static final String copySuccess = 'copy_success'.tr; // 复制
   static final String newUserGenderTitle = 'new_user_gender_title'.tr; // Hi,欢迎来到追爱小键盘
   static final String newUserGenderDesc = 'new_user_gender_desc'.tr; // 您的性别是?
   static final String newUserBirthdayTitle = 'new_user_birthday_title'.tr; // 生日
@@ -537,7 +538,8 @@ class StringMultiSource {
       'keyboard_guide_ta_reply1': '👋 欢迎使用【追爱小键盘】\n复制任意一句对话,点击人设体验回复',
       'keyboard_guide_ta_reply2': '你睡了吗?',
       'keyboard_guide_ta_reply3': '我先去吃饭了,一会聊',
-      'keyboard_guide_ta_reply4': '去调节亲密度,查看吃定Ta的人设',
+      'keyboard_guide_ta_reply4': '我去洗澡了',
+      'keyboard_guide_ta_reply5': '去调节亲密度,查看吃定Ta的人设',
       'intimacy_analyse_tab_report': '亲密分析报告',
       'intimacy_analyse_tab_screenshot_reply': '截图回复',
       'intimacy_analyse_tab_conversation_analysis': '对话分析',
@@ -633,7 +635,7 @@ class StringMultiSource {
       'logout_dialog_confirm': '确认',
       'logout_dialog_desc': '确定退出登录吗?',
       'skip': '跳过',
-      'copy_success': '复制成功',
+      'copy_success': '复制',
       'new_user_gender_title': 'Hi,欢迎来到追爱小键盘',
       'new_user_gender_desc': '您的性别是?',
       'new_user_birthday_title': '生日',