pull/5/head
guci 2 weeks ago
parent 80f15e090f
commit edbfb34962

@ -1,50 +0,0 @@
Menu_note_list.xml
<!-- 背景图功能 -->
<item
android:id="@+id/menu_a1"
android:title="@string/menu_a1"/>
<item
android:id="@+id/menu_a2"
android:title="@string/menu_a2"/>
<item
android:id="@+id/menu_a3"
android:title="@string/menu_a3"/>
NotelistActivity类
//背景图功能
public int mode=-1;
// 私密模式
public static int secret_mode = 0;
// 背景图功能
getWindow().setBackgroundDrawableResource(R.drawable.a3);
getWindow().setBackgroundDrawableResource(R.drawable.a2);
getWindow().setBackgroundDrawableResource(R.drawable.a1);
// 背景功能
if(mode==-1)
menu.findItem(R.id.menu_a1).setVisible(false);
else if (mode==0)
menu.findItem(R.id.menu_a2).setVisible(false);
else if (mode==1)
menu.findItem(R.id.menu_a3).setVisible(false);
// 背景功能
case R.id.menu_a1:{
mode=-1;
getWindow().setBackgroundDrawableResource(R.drawable.a1);
break;
}
case R.id.menu_a2:{
mode=0;
getWindow().setBackgroundDrawableResource(R.drawable.a2);
break;
}
case R.id.menu_a3:{
mode=1;
getWindow().setBackgroundDrawableResource(R.drawable.a3);
break;
}
Values_string.xml
<!-- 背景图功能 -->
<string name="menu_a2">Background: a2</string>
<string name="menu_a1">Background: a1</string>
<string name="menu_a3">Background: a3</string>

@ -1,57 +0,0 @@
NoteListActivity类
public void supportInvalidateOptionsMenu() {
invalidateOptionsMenu(); // 最终调用 Activity 的原生方法
}
if(secret_mode == 1)
menu.findItem(R.id.menu_secret).setVisible(false);
else
menu.findItem(R.id.menu_quit_secret).setVisible(false);
return true;
}
case R.id.menu_secret: { // 进入私密模式
secret_mode = 1; // 先临时设为1用于对话框标题提示
AlertDialog.Builder dialog = new AlertDialog.Builder(NotesListActivity.this);
dialog.setTitle("重要提醒")
.setMessage("您确认进入私密模式吗?")
.setCancelable(false)
.setPositiveButton("确认", (d, which) -> {
startAsyncNotesListQuery();
Toast.makeText(NotesListActivity.this, "您已进入私密模式", Toast.LENGTH_SHORT).show();
})
.setNegativeButton("取消", (d, which) -> {
secret_mode = 0; // 恢复状态
supportInvalidateOptionsMenu(); // 强制刷新菜单
})
.show();
break;
}
case R.id.menu_quit_secret: { // 退出私密模式
AlertDialog.Builder dialog = new AlertDialog.Builder(NotesListActivity.this);
dialog.setTitle("重要提醒")
.setMessage("您确认退出私密模式吗?")
.setCancelable(false)
.setPositiveButton("确认", (d, which) -> {
secret_mode = 0;
startAsyncNotesListQuery();
supportInvalidateOptionsMenu(); // 刷新菜单
Toast.makeText(NotesListActivity.this, "您已退出私密模式", Toast.LENGTH_SHORT).show();
})
.setNegativeButton("取消", null) // 无需操作
.show();
break;
}
ShareActionProvider
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.note_list, menu);
MenuItem enterSecret = menu.findItem(R.id.menu_secret);
MenuItem quitSecret = menu.findItem(R.id.menu_quit_secret);
enterSecret.setVisible(secret_mode == 0); // 非私密模式时显示"进入"
quitSecret.setVisible(secret_mode == 1); // 私密模式时显示"退出"
return true;
}
Loading…
Cancel
Save