修改 自定义背景功能 增加 对话框xml文件 预览效果 #25

Merged
p6vxzahlf merged 1 commits from wangyijia_branch into master 1 month ago

@ -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();
}

Loading…
Cancel
Save