diff --git a/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java index 439955c..984752d 100644 --- a/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java +++ b/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java @@ -670,7 +670,7 @@ public class NoteEditActivity extends Activity implements OnClickListener, if (mWorkingNote.getNoteId() > 0) { Intent intent = new Intent(this, AlarmReceiver.class); intent.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mWorkingNote.getNoteId())); - PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); + PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_IMMUTABLE); AlarmManager alarmManager = ((AlarmManager) getSystemService(ALARM_SERVICE)); showAlertHeader(); if(!set) { diff --git a/src/app/src/main/java/net/micode/notes/ui/NotesListActivity.java b/src/app/src/main/java/net/micode/notes/ui/NotesListActivity.java index e843aec..8ac7e7e 100644 --- a/src/app/src/main/java/net/micode/notes/ui/NotesListActivity.java +++ b/src/app/src/main/java/net/micode/notes/ui/NotesListActivity.java @@ -79,6 +79,7 @@ import java.io.InputStreamReader; import java.util.HashSet; public class NotesListActivity extends Activity implements OnClickListener, OnItemLongClickListener { + public static int secret_mode = 0; private static final int FOLDER_NOTE_LIST_QUERY_TOKEN = 0; private static final int FOLDER_LIST_QUERY_TOKEN = 1; @@ -411,10 +412,35 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt private void startAsyncNotesListQuery() { String selection = (mCurrentFolderId == Notes.ID_ROOT_FOLDER) ? ROOT_FOLDER_SELECTION : NORMAL_SELECTION; - mBackgroundQueryHandler.startQuery(FOLDER_NOTE_LIST_QUERY_TOKEN, null, - Notes.CONTENT_NOTE_URI, NoteItemData.PROJECTION, selection, new String[] { - String.valueOf(mCurrentFolderId) - }, NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC"); + if(secret_mode == 0) { + mBackgroundQueryHandler.startQuery(FOLDER_NOTE_LIST_QUERY_TOKEN, null, + Notes.CONTENT_NOTE_URI, NoteItemData.PROJECTION, selection, new String[]{ + String.valueOf(mCurrentFolderId) + }, NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC"); + } + else{ + String str1 = "123"; + String [] PROJECTION = new String [] { //定义一个新的PROJECTION数组,只换掉SNIPPET + NoteColumns.ID, + NoteColumns.ALERTED_DATE, + NoteColumns.BG_COLOR_ID, + NoteColumns.CREATED_DATE, + NoteColumns.HAS_ATTACHMENT, + NoteColumns.MODIFIED_DATE, + NoteColumns.NOTES_COUNT, + NoteColumns.PARENT_ID, +// NoteColumns.SNIPPET, + str1, + NoteColumns.TYPE, + NoteColumns.WIDGET_ID, + NoteColumns.WIDGET_TYPE, + }; + mBackgroundQueryHandler.startQuery(FOLDER_NOTE_LIST_QUERY_TOKEN, null, + Notes.CONTENT_NOTE_URI, PROJECTION, selection, new String[]{ + String.valueOf(mCurrentFolderId) + }, NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC"); + + } } private final class BackgroundQueryHandler extends AsyncQueryHandler { @@ -768,6 +794,17 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt // set sync or sync_cancel menu.findItem(R.id.menu_sync).setTitle( GTaskSyncService.isSyncing() ? R.string.menu_sync_cancel : R.string.menu_sync); + + // 修复:先查找菜单项再设置可见性 + MenuItem secretItem = menu.findItem(R.id.menu_secret); + MenuItem quitSecretItem = menu.findItem(R.id.menu_quit_secret); + if (secretItem != null && quitSecretItem != null) { + if(secret_mode == 1) { + secretItem.setVisible(false); + } else { + quitSecretItem.setVisible(false); + } + } } else if (mState == ListEditState.SUB_FOLDER) { getMenuInflater().inflate(R.menu.sub_folder, menu); } else if (mState == ListEditState.CALL_RECORD_FOLDER) { @@ -781,6 +818,52 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { + case R.id.menu_quit_secret: { + secret_mode = 0; + AlertDialog.Builder dialog = new AlertDialog.Builder(NotesListActivity.this); + dialog.setTitle("重要提醒"); + dialog.setMessage("您确认退出私密模式吗?"); + dialog.setCancelable(false); + dialog.setPositiveButton("确认", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + // 确保在主线程执行数据加载 + runOnUiThread(new Runnable() { + @Override + public void run() { + startAsyncNotesListQuery(); + Toast.makeText(NotesListActivity.this,"您已退出私密模式",Toast.LENGTH_SHORT).show(); + } + }); + } + }); + dialog.setNegativeButton("取消", null); + dialog.show(); + break; + } + case R.id.menu_secret: { + secret_mode = 1; + AlertDialog.Builder dialog = new AlertDialog.Builder(NotesListActivity.this); + dialog.setTitle("重要提醒"); + dialog.setMessage("您确认进入私密模式吗?"); + dialog.setCancelable(false); + dialog.setPositiveButton("确认", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + // 确保在主线程执行数据加载 + runOnUiThread(new Runnable() { + @Override + public void run() { + startAsyncNotesListQuery(); + Toast.makeText(NotesListActivity.this,"您已进入私密模式",Toast.LENGTH_SHORT).show(); + } + }); + } + }); + dialog.setNegativeButton("取消", null); + dialog.show(); + break; + } case R.id.menu_new_folder: { showCreateOrModifyFolderDialog(true); break; diff --git a/src/app/src/main/res/menu/note_list.xml b/src/app/src/main/res/menu/note_list.xml index 42ea736..5b38a43 100644 --- a/src/app/src/main/res/menu/note_list.xml +++ b/src/app/src/main/res/menu/note_list.xml @@ -36,4 +36,12 @@ + + + + diff --git a/src/app/src/main/res/menu/sub_folder.xml b/src/app/src/main/res/menu/sub_folder.xml index b00de26..44f9642 100644 --- a/src/app/src/main/res/menu/sub_folder.xml +++ b/src/app/src/main/res/menu/sub_folder.xml @@ -21,4 +21,12 @@ + + + + \ No newline at end of file diff --git a/src/app/src/main/res/values-zh-rCN/strings.xml b/src/app/src/main/res/values-zh-rCN/strings.xml index 09f75ed..b693e80 100644 --- a/src/app/src/main/res/values-zh-rCN/strings.xml +++ b/src/app/src/main/res/values-zh-rCN/strings.xml @@ -17,6 +17,8 @@ + 私密模式 + 退出私密模式 便签 便签2x2 便签4x4 diff --git a/src/app/src/main/res/values-zh-rTW/strings.xml b/src/app/src/main/res/values-zh-rTW/strings.xml index 3c41894..40908d4 100644 --- a/src/app/src/main/res/values-zh-rTW/strings.xml +++ b/src/app/src/main/res/values-zh-rTW/strings.xml @@ -17,6 +17,8 @@ + 私密模式 + 退出私密模式 便簽 便簽2x2 便簽4x4 diff --git a/src/app/src/main/res/values/strings.xml b/src/app/src/main/res/values/strings.xml index 55df868..731800c 100644 --- a/src/app/src/main/res/values/strings.xml +++ b/src/app/src/main/res/values/strings.xml @@ -17,6 +17,8 @@ + secret model + quit secret model Notes Notes 2x2 Notes 4x4