From a4be26075365077fdddf03d14252446334453a8a Mon Sep 17 00:00:00 2001 From: white-yj8109 <19310195525@163.com> Date: Sat, 17 Jan 2026 17:27:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=96=87=E4=BB=B6=E5=A4=B9?= =?UTF-8?q?=E8=A7=86=E5=9B=BE=E8=BF=94=E5=9B=9E=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ui/NotesListActivity.java | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/ui/NotesListActivity.java b/src/ui/NotesListActivity.java index 186fe6b..cb2f791 100644 --- a/src/ui/NotesListActivity.java +++ b/src/ui/NotesListActivity.java @@ -154,6 +154,18 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt setContentView(R.layout.note_list); initResources(); + // 注册Android 13+的返回键回调 + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) { + getOnBackInvokedDispatcher().registerOnBackInvokedCallback( + android.window.OnBackInvokedDispatcher.PRIORITY_DEFAULT, + new android.window.OnBackInvokedCallback() { + @Override + public void onBackInvoked() { + handleBackPress(); + } + } + ); + } /** * Insert an introduction when user firstly use this application */ @@ -773,13 +785,17 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt } @Override - public void onBackPressed() {// 处理返回键事件 + public void onBackPressed() { + handleBackPress(); + } + public void handleBackPress() {// 处理返回键按下事件,根据当前状态执行相应操作 switch (mState) { case SUB_FOLDER:// 返回上一级文件夹 mCurrentFolderId = Notes.ID_ROOT_FOLDER; mState = ListEditState.NOTE_LIST; - startAsyncNotesListQuery(); mTitleBar.setVisibility(View.GONE); + startAsyncNotesListQuery(); + invalidateOptionsMenu(); break; case CALL_RECORD_FOLDER:// 返回上一级通话记录文件夹 mCurrentFolderId = Notes.ID_ROOT_FOLDER; @@ -922,10 +938,6 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt break; } - case R.id.menu_search:{ - onSearchRequested(); - break; - } //如果是背景设置菜单项 case R.id.menu_background_settings: { showBackgroundSettingsDialog();