From 710449d7e5e96fae54630d918f6b3a983830172e Mon Sep 17 00:00:00 2001 From: gq <15933486098@qq.com> Date: Thu, 15 May 2025 08:16:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E9=87=8A=E4=BA=86=E5=A4=84=E7=90=86?= =?UTF-8?q?=E9=94=AE=E7=9B=98=E6=8C=89=E4=B8=8B=E4=BA=8B=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/net/micode/notes/ui/NoteEditText.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/Notesmaster/app/src/main/java/net/micode/notes/ui/NoteEditText.java b/Notesmaster/app/src/main/java/net/micode/notes/ui/NoteEditText.java index ded9ddb..69cd565 100644 --- a/Notesmaster/app/src/main/java/net/micode/notes/ui/NoteEditText.java +++ b/Notesmaster/app/src/main/java/net/micode/notes/ui/NoteEditText.java @@ -143,18 +143,28 @@ public class NoteEditText extends EditText { @Override public boolean onKeyDown(int keyCode, KeyEvent event) { + // 处理键盘按下事件 switch (keyCode) { - case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_ENTER: // 回车键处理 + // 当存在文本变化监听器时,不消费回车键事件 + // 以便监听器可以自定义回车键行为(如换行处理) if (mOnTextViewChangeListener != null) { - return false; + return false; // false表示允许事件继续传递 } break; - case KeyEvent.KEYCODE_DEL: + + case KeyEvent.KEYCODE_DEL: // 删除键处理 + // 记录删除前的光标起始位置 + // 用于支持撤销操作或特殊删除逻辑 mSelectionStartBeforeDelete = getSelectionStart(); break; + default: + // 其他按键不做特殊处理 break; } + + // 未被处理的按键事件交由父类默认处理 return super.onKeyDown(keyCode, event); }