ResourceParser注释

xdx_branch
dingxuXie 1 year ago
parent f18e6a0d8b
commit 2e488b153a

@ -22,24 +22,38 @@ import android.preference.PreferenceManager;
import net.micode.notes.R;
import net.micode.notes.ui.NotesPreferenceActivity;
public class ResourceParser {//
/**
* ResourceParser 便访
* drawable访
*/
public class ResourceParser {
// 笔记背景所用的各种颜色常量定义。
public static final int YELLOW = 0;
public static final int BLUE = 1;
public static final int WHITE = 2;
public static final int GREEN = 3;
public static final int RED = 4;
// 默认的笔记背景颜色。
public static final int BG_DEFAULT_COLOR = YELLOW;
// 文本大小常量定义,适用于不同级别的文本展示。
public static final int TEXT_SMALL = 0;
public static final int TEXT_MEDIUM = 1;
public static final int TEXT_LARGE = 2;
public static final int TEXT_SUPER = 3;
// 默认的笔记背景字体大小。
public static final int BG_DEFAULT_FONT_SIZE = TEXT_MEDIUM;
/**
* NoteBgResources drawable
* BG_EDIT_RESOURCESBG_EDIT_TITLE_RESOURCES
* 便
*/
public static class NoteBgResources {
// 编辑笔记背景时使用的drawable资源数组与颜色常量一一对应。
private final static int [] BG_EDIT_RESOURCES = new int [] {
R.drawable.edit_yellow,
R.drawable.edit_blue,
@ -48,6 +62,7 @@ public class ResourceParser {//
R.drawable.edit_red
};
// 编辑笔记标题背景时使用的drawable资源数组同样与颜色常量一一对应。
private final static int [] BG_EDIT_TITLE_RESOURCES = new int [] {
R.drawable.edit_title_yellow,
R.drawable.edit_title_blue,
@ -55,26 +70,51 @@ public class ResourceParser {//
R.drawable.edit_title_green,
R.drawable.edit_title_red
};
}
}
/**
* id
* @param id id
* @return id
*/
public static int getNoteBgResource(int id) {
return BG_EDIT_RESOURCES[id];
}
/**
* id
* @param id id
* @return id
*/
public static int getNoteTitleBgResource(int id) {
return BG_EDIT_TITLE_RESOURCES[id];
}
}
/**
* id
*
* @param context 访SharedPreferences
* @return id
*/
public static int getDefaultBgId(Context context) {
// 检查用户是否设置了自定义背景颜色
if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean(
NotesPreferenceActivity.PREFERENCE_SET_BG_COLOR_KEY, false)) {
// 如果设置了,返回一个随机的背景资源
return (int) (Math.random() * NoteBgResources.BG_EDIT_RESOURCES.length);
} else {
// 如果未设置,返回默认背景资源
return BG_DEFAULT_COLOR;
}
}
/*
*/
public static class NoteItemBgResources {
// 首次展示的背景资源数组
private final static int [] BG_FIRST_RESOURCES = new int [] {
R.drawable.list_yellow_up,
R.drawable.list_blue_up,
@ -83,6 +123,7 @@ public class ResourceParser {//
R.drawable.list_red_up
};
// 正常展示的背景资源数组
private final static int [] BG_NORMAL_RESOURCES = new int [] {
R.drawable.list_yellow_middle,
R.drawable.list_blue_middle,
@ -91,6 +132,7 @@ public class ResourceParser {//
R.drawable.list_red_middle
};
// 最后展示的背景资源数组
private final static int [] BG_LAST_RESOURCES = new int [] {
R.drawable.list_yellow_down,
R.drawable.list_blue_down,
@ -99,6 +141,7 @@ public class ResourceParser {//
R.drawable.list_red_down,
};
// 单个展示的背景资源数组
private final static int [] BG_SINGLE_RESOURCES = new int [] {
R.drawable.list_yellow_single,
R.drawable.list_blue_single,
@ -106,41 +149,45 @@ public class ResourceParser {//
R.drawable.list_green_single,
R.drawable.list_red_single
};
}
//根据提供的ID获取对应的笔记背景资源的第一个资源。
public static int getNoteBgFirstRes(int id) {
public static int getNoteBgFirstRes(int id) {
return BG_FIRST_RESOURCES[id];
}
}
public static int getNoteBgLastRes(int id) {
//根据提供的ID获取对应的笔记背景资源的最后一个资源。
public static int getNoteBgLastRes(int id) {
return BG_LAST_RESOURCES[id];
}
}
public static int getNoteBgSingleRes(int id) {
//根据提供的ID获取对应的笔记背景资源的单个资源。
public static int getNoteBgSingleRes(int id) {
return BG_SINGLE_RESOURCES[id];
}
}
public static int getNoteBgNormalRes(int id) {
//根据提供的ID获取对应的笔记背景资源的普通资源。
public static int getNoteBgNormalRes(int id) {
return BG_NORMAL_RESOURCES[id];
}
}
public static int getFolderBgRes() {
//获取文件夹背景资源的ID。
public static int getFolderBgRes() {
return R.drawable.list_folder;
}
}
}
public static class WidgetBgResources {
private final static int [] BG_2X_RESOURCES = new int [] {
R.drawable.widget_2x_yellow,
R.drawable.widget_2x_blue,
R.drawable.widget_2x_white,
R.drawable.widget_2x_green,
R.drawable.widget_2x_red,
};
//这个内部类提供了一系列的Widget背景资源。
public static class WidgetBgResources {
public static int getWidget2xBgResource(int id) {
return BG_2X_RESOURCES[id];
}
// 提供4x尺寸的Widget背景资源。
private final static int [] BG_4X_RESOURCES = new int [] {
R.drawable.widget_4x_yellow,
R.drawable.widget_4x_blue,
@ -149,12 +196,17 @@ public class ResourceParser {//
R.drawable.widget_4x_red
};
public static int getWidget4xBgResource(int id) {
//获取指定索引的4x Widget背景资源的ID。
c static int getWidget4xBgResource(int id) {
return BG_4X_RESOURCES[id];
}
}
}
//这个内部类提供了一系列的文本外观资源。
public static class TextAppearanceResources {
// 定义了一系列的文本外观样式资源。
public static class TextAppearanceResources {
private final static int [] TEXTAPPEARANCE_RESOURCES = new int [] {
R.style.TextAppearanceNormal,
R.style.TextAppearanceMedium,
@ -162,20 +214,22 @@ public class ResourceParser {//
R.style.TextAppearanceSuper
};
// 这里似乎缺少了方法来获取这些文本外观资源的ID
}
public class ResourceParser {
// HACKME: 修复了存储资源ID到共享偏好中的bug。如果ID大于资源数组的长度
// 则返回默认字体大小BG_DEFAULT_FONT_SIZE。
public static int getTexAppearanceResource(int id) {
/**
* HACKME: Fix bug of store the resource id in shared preference.
* The id may larger than the length of resources, in this case,
* return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE}
*/
if (id >= TEXTAPPEARANCE_RESOURCES.length) {
return BG_DEFAULT_FONT_SIZE;
}
return TEXTAPPEARANCE_RESOURCES[id];
}
// 获取TEXTAPPEARANCE_RESOURCES数组的大小。
public static int getResourcesSize() {
return TEXTAPPEARANCE_RESOURCES.length;
}
}
}
Loading…
Cancel
Save