From 5951151551458709d4230558c10d356776928a16 Mon Sep 17 00:00:00 2001 From: white-yj8109 <19310195525@163.com> Date: Sat, 17 Jan 2026 23:53:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E8=83=8C=E6=99=AF=E5=8A=9F=E8=83=BD=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=20=E5=AF=B9=E8=AF=9D=E6=A1=86xml=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E9=A2=84=E8=A7=88=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ui/NotesListActivity.java | 158 ++++++++++++++++++++++++++++------ 1 file changed, 132 insertions(+), 26 deletions(-) diff --git a/src/ui/NotesListActivity.java b/src/ui/NotesListActivity.java index cb2f791..8f55201 100644 --- a/src/ui/NotesListActivity.java +++ b/src/ui/NotesListActivity.java @@ -55,6 +55,7 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemLongClickListener; import android.widget.Button; import android.widget.EditText; +import android.widget.ImageView; import android.widget.ListView; import android.widget.PopupMenu; import android.widget.TextView; @@ -273,53 +274,158 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt mBackgroundManager = new BackgroundManager(this, R.id.notes_root); mBackgroundManager.applyBackgroundFromPrefs(); } + + + //显示背景设置对话框 private void showBackgroundSettingsDialog() { - final String[] options = new String[] {"纯色背景", "系统内置图片", "从相册选择", "恢复默认"}; AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle("选择背景"); - builder.setItems(options, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - if (which == 0) { + View view = LayoutInflater.from(this).inflate(R.layout.background_settings_dialog, null); + builder.setView(view); + + Button btnSolidColor = (Button) view.findViewById(R.id.btn_solid_color); + Button btnBuiltinImage = (Button) view.findViewById(R.id.btn_builtin_image); + Button btnGalleryImage = (Button) view.findViewById(R.id.btn_gallery_image); + Button btnResetDefault = (Button) view.findViewById(R.id.btn_reset_default); + + final AlertDialog dialog = builder.create(); + + btnSolidColor.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); showColorChoiceDialog(); - } else if (which == 1) { + } + }); + + btnBuiltinImage.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); showBuiltinChoiceDialog(); - } else if (which == 2) { + } + }); + + btnGalleryImage.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); if (mBackgroundManager != null) mBackgroundManager.pickImageFromGallery(); - } else if (which == 3) { + } + }); + + btnResetDefault.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); if (mBackgroundManager != null) mBackgroundManager.resetToDefaultAndClear(); - } } }); - builder.show(); + + dialog.show(); } private void showColorChoiceDialog() { - final int[] colors = new int[] {0xFFFFFFFF, 0xFFFFFFCC, 0xFFFFF0F0, 0xFFE8FFF0, 0xFFDDE8FF}; - final String[] names = new String[] {"白色", "浅黄", "浅红", "浅绿", "浅蓝"}; AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle("选择纯色背景"); - builder.setItems(names, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - int color = colors[which]; - if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(color); + View view = LayoutInflater.from(this).inflate(R.layout.color_choice_dialog, null); + builder.setView(view); + + View colorWhite = view.findViewById(R.id.color_white); + View colorYellow = view.findViewById(R.id.color_yellow); + View colorRed = view.findViewById(R.id.color_red); + View colorGreen = view.findViewById(R.id.color_green); + View colorBlue = view.findViewById(R.id.color_blue); + + final AlertDialog dialog = builder.create(); + + colorWhite.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(0xFFFFFFFF); } }); - builder.show(); + + colorYellow.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(0xFFFFFFCC); + } + }); + + colorRed.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(0xFFFFF0F0); + } + }); + + colorGreen.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(0xFFE8FFF0); + } + }); + + colorBlue.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyColorAndSave(0xFFDDE8FF); + } + }); + + dialog.show(); } private void showBuiltinChoiceDialog() { - final int[] resIds = new int[] {R.drawable.background_1, R.drawable.background_2, R.drawable.background_3, R.drawable.background_4}; - final String[] names = new String[] {"预设1", "预设2", "预设3", "预设4"}; AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle("选择内置背景"); - builder.setItems(names, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - int resId = resIds[which]; - if (mBackgroundManager != null) mBackgroundManager.applyBuiltinAndSave(resId); + View view = LayoutInflater.from(this).inflate(R.layout.builtin_image_choice_dialog, null); + builder.setView(view); + + ImageView imageBuiltin1 = (ImageView) view.findViewById(R.id.image_builtin_1); + ImageView imageBuiltin2 = (ImageView) view.findViewById(R.id.image_builtin_2); + ImageView imageBuiltin3 = (ImageView) view.findViewById(R.id.image_builtin_3); + ImageView imageBuiltin4 = (ImageView) view.findViewById(R.id.image_builtin_4); + + final AlertDialog dialog = builder.create(); + + imageBuiltin1.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyBuiltinAndSave(R.drawable.background_1); } }); - builder.show(); + + imageBuiltin2.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyBuiltinAndSave(R.drawable.background_2); + } + }); + + imageBuiltin3.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyBuiltinAndSave(R.drawable.background_3); + } + }); + + imageBuiltin4.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + dialog.dismiss(); + if (mBackgroundManager != null) mBackgroundManager.applyBuiltinAndSave(R.drawable.background_4); + } + }); + + dialog.show(); }