|
|
Æ»¹û½Å±¾ÏÖ´úÉîÉ«UIÉè¼Æ·ç¸ñ
- // 🎯 ÖÇÄܸöÈËÖúÊÖ - È«ÐÂUI½çÃæÉè¼Æ
- // 🍎ÌÚ711841924,ÌÚ528816639
- // ÌØÉ«¹¦ÄÜ: ÈÎÎñ¹ÜÀí¡¢¿ì½Ý²Ù×÷¡¢Êý¾Ý¼à¿Ø¡¢¸öÐÔ»¯ÉèÖÃ
- printl("=== ÖÇÄܸöÈËÖúÊÖÆô¶¯ ===");
- var tab = new TabView();
- tab.setTitles(["Ê×Ò³", "ÈÎÎñ", "¹¤¾ß", "Êý¾Ý"]);
- tab.show(function() {
- printl("ÖÇÄܸöÈËÖúÊÖ½çÃæ¼ÓÔØÍê³É");
-
- // ====================== µÚÒ»Ò³:ÖÇÄÜÊ×Ò³ ======================
- var homePage = createHomePage();
- tab.addView(0, homePage);
-
- // ====================== µÚ¶þÒ³:ÈÎÎñ¹ÜÀí ======================
- var taskPage = createTaskPage();
- tab.addView(1, taskPage);
-
- // ====================== µÚÈýÒ³:¿ì½Ý¹¤¾ß ======================
- var toolPage = createToolPage();
- tab.addView(2, toolPage);
-
- // ====================== µÚËÄÒ³:Êý¾Ý¼à¿Ø ======================
- var dataPage = createDataPage();
- tab.addView(3, dataPage);
-
- printl("ËùÓÐÒ³Ãæ³õʼ»¯Íê³É");
- });
- // ====================== ´´½¨ÖÇÄÜÊ×Ò³ ======================
- function createHomePage() {
- var page = new Vertical();
- page.setSpacing(12);
- page.setBackgroundColor(248, 250, 252);
-
- // ¶¥²¿»¶Ó¿¨Æ¬
- var welcomeCard = new Vertical();
- welcomeCard.setBackgroundColor(255, 255, 255);
- welcomeCard.setContainerSize(380, 140);
-
- var timeLabel = new Label();
- var now = new Date();
- var hour = now.getHours();
- var greeting = "";
- if (hour < 6) greeting = "Ò¹ÉîÁË";
- else if (hour < 9) greeting = "ÔçÉϺÃ";
- else if (hour < 12) greeting = "ÉÏÎçºÃ";
- else if (hour < 14) greeting = "ÖÐÎçºÃ";
- else if (hour < 18) greeting = "ÏÂÎçºÃ";
- else greeting = "ÍíÉϺÃ";
-
- timeLabel.setText(greeting + "£¡\n" + (now.getMonth() + 1) + "ÔÂ" + now.getDate() + "ÈÕ");
- timeLabel.setTextColor(50, 50, 50);
- timeLabel.setFontSize(22);
- timeLabel.setTextAlignment("center");
- welcomeCard.addView(timeLabel);
-
- var quoteLabel = new Label();
- quoteLabel.setText("✨ ÿһÌì¶¼ÊÇеĿªÊ¼");
- quoteLabel.setTextColor(120, 120, 120);
- quoteLabel.setFontSize(13);
- quoteLabel.setTextAlignment("center");
- welcomeCard.addView(quoteLabel);
-
- page.addView(welcomeCard);
-
- // ¿ìËÙͳ¼ÆÇøÓò
- var statsRow = new Horizontal();
- statsRow.setSpacing(10);
-
- var statItems = [
- {icon: "📋", label: "´ý°ì", value: "5", color: [66, 133, 244]},
- {icon: "✅", label: "Íê³É", value: "12", color: [52, 168, 83]},
- {icon: "⏰", label: "ÌáÐÑ", value: "3", color: [251, 188, 5]}
- ];
-
- // ͳ¼Æ¿¨Æ¬Ìí¼Óµã»÷½»»¥
- for (var i = 0; i < statItems.length; i++) {
- var statCard = createStatCard(statItems[i]);
- // Ϊͳ¼Æ¿¨Æ¬Ìí¼Óµã»÷°´Å¥
- var clickBtn = new Button();
- clickBtn.setText("²é¿´");
- clickBtn.setColor(statItems[i].color[0], statItems[i].color[1], statItems[i].color[2]);
- clickBtn.setTextColor(255, 255, 255);
- clickBtn.setWidth(115);
- clickBtn.setHeight(25);
- clickBtn.onClick(function() {
- printl("²é¿´" + statItems[i].label + "ÏêÇé");
- showToast(statItems[i].label + "ÏêϸÊý¾Ý");
- });
- statsRow.addView(statCard);
- }
-
- page.addView(statsRow);
-
- // ³£Óù¦ÄÜÇø
- var sectionTitle = new Label();
- sectionTitle.setText("³£Óù¦ÄÜ");
- sectionTitle.setTextColor(80, 80, 80);
- sectionTitle.setFontSize(16);
- page.addView(sectionTitle);
-
- var quickActions = new Vertical();
- quickActions.setBackgroundColor(255, 255, 255);
- quickActions.setSpacing(8);
-
- var actions = [
- {icon: "📝", text: "н¨±Ê¼Ç", color: [66, 133, 244]},
- {icon: "📅", text: "Ìí¼ÓÈÕ³Ì", color: [52, 168, 83]},
- {icon: "🔔", text: "ÉèÖÃÌáÐÑ", color: [251, 188, 5]},
- {icon: "📊", text: "²é¿´±¨¸æ", color: [156, 39, 176]},
- {icon: "🏠", text: "·µ»Ø×ÀÃæ", color: [244, 67, 54]}
- ];
-
- for (var i = 0; i < actions.length; i++) {
- var actionBtn = createActionButton(actions[i]);
- quickActions.addView(actionBtn);
- }
-
- page.addView(quickActions);
-
- return page;
- }
- // ´´½¨Í³¼Æ¿¨Æ¬
- function createStatCard(item) {
- var card = new Vertical();
- card.setAlignment("center");
- card.setBackgroundColor(255, 255, 255);
- card.setContainerSize(115, 90);
-
- var iconLabel = new Label();
- iconLabel.setText(item.icon);
- iconLabel.setFontSize(28);
- card.addView(iconLabel);
-
- var valueLabel = new Label();
- valueLabel.setText(item.value);
- valueLabel.setTextColor(item.color[0], item.color[1], item.color[2]);
- valueLabel.setFontSize(20);
- card.addView(valueLabel);
-
- var label = new Label();
- label.setText(item.label);
- label.setTextColor(150, 150, 150);
- label.setFontSize(12);
- card.addView(label);
-
- return card;
- }
- // ´´½¨²Ù×÷°´Å¥
- function createActionButton(item) {
- var btn = new Button();
- btn.setText(item.icon + " " + item.text);
- btn.setColor(item.color[0], item.color[1], item.color[2]);
- btn.setTextColor(255, 255, 255);
- btn.setHeight(50);
- btn.onClick(function() {
- printl("µã»÷: " + item.text);
-
- // Èç¹ûÊÇ"н¨±Ê¼Ç"°´Å¥£¬Ö´ÐÐÖ÷½Å±¾µÄ¹¦ÄÜ
- if (item.text === "н¨±Ê¼Ç") {
- try {
- showToast("ÕýÔÚÆô¶¯Ö÷½Å±¾...");
- printl("=== ¿ªÊ¼Ö´ÐÐÖ÷½Å±¾¹¦ÄÜ ===");
-
- // ʹÓà Import() º¯Êýµ¼Èë²¢ÔËÐÐÖ÷½Å±¾.js
- printl("³¢ÊÔµ¼ÈëÖ÷½Å±¾.js...");
- Import("Ö÷½Å±¾.js");
- toast.show("Òѵ¼ÈëÖ÷½Å±¾.js");
- printl("✓ Ö÷½Å±¾Òѵ¼Èë");
-
- } catch(e) {
- printl("µ¼ÈëÖ÷½Å±¾Ê§°Ü: " + e.message);
- showToast("µ¼Èëʧ°Ü: " + e.message);
- }
- }
- // Èç¹ûÊÇ"·µ»Ø×ÀÃæ"°´Å¥£¬Ö±½Ó·µ»Ø×ÀÃæ
- else if (item.text === "·µ»Ø×ÀÃæ") {
- showToast("ÕýÔÚ·µ»Ø×ÀÃæ...");
- try {
- hid.home();
- printl("ÒѰ´ÏÂHome¼ü·µ»Ø×ÀÃæ");
- } catch(e) {
- printl("·µ»Ø×ÀÃæÊ§°Ü: " + e.message);
- showToast("·µ»ØÊ§°Ü: " + e.message);
- }
- } else {
- showToast(item.text + " ¹¦ÄÜ¿ª·¢ÖÐ");
- }
- });
- return btn;
- }
- // ====================== ´´½¨ÈÎÎñ¹ÜÀíÒ³ ======================
- function createTaskPage() {
- var page = new Vertical();
- page.setSpacing(15);
- page.setBackgroundColor(248, 250, 252);
-
- // ±êÌâÀ¸
- var header = new Horizontal();
- header.setBackgroundColor(255, 255, 255);
-
- var titleLabel = new Label();
- titleLabel.setText("📋 ÈÎÎñ¹ÜÀí");
- titleLabel.setTextColor(50, 50, 50);
- titleLabel.setFontSize(20);
- header.addView(titleLabel);
-
- page.addView(header);
-
- // ÈÎÎñ·ÖÀà±êÇ©
- var categoryRow = new Horizontal();
- categoryRow.setSpacing(10);
-
- var categories = ["È«²¿", "½øÐÐÖÐ", "ÒÑÍê³É", "ÒÑÑÓÆÚ"];
- for (var i = 0; i < categories.length; i++) {
- var catBtn = new Button();
- catBtn.setText(categories[i]);
- catBtn.setColor(i === 0 ? 66 : 200, i === 0 ? 133 : 200, i === 0 ? 244 : 200);
- catBtn.setTextColor(255, 255, 255);
- catBtn.setWidth(80);
- catBtn.setHeight(35);
- catBtn.onClick(function() {
- printl("ɸѡÈÎÎñ: " + this.getText());
- showToast("ÒÑɸѡ: " + this.getText());
- });
- categoryRow.addView(catBtn);
- }
-
- page.addView(categoryRow);
-
- // ÈÎÎñÁбí
- var taskList = new Vertical();
- taskList.setSpacing(10);
-
- var tasks = [
- {title: "Íê³ÉÏîÄ¿Îĵµ", priority: "¸ß", status: "½øÐÐÖÐ", time: "½ñÌì 18:00"},
- {title: "»Ø¸´¿Í»§Óʼþ", priority: "ÖÐ", status: "´ý´¦Àí", time: "Ã÷Ìì 10:00"},
- {title: "ÕûÀí»áÒé¼ÍÒª", priority: "µÍ", status: "ÒÑÍê³É", time: "×òÌì"}
- ];
-
- for (var i = 0; i < tasks.length; i++) {
- var taskCard = createTaskCard(tasks[i]);
- taskList.addView(taskCard);
- }
-
- page.addView(taskList);
-
- // Ìí¼ÓÈÎÎñ°´Å¥
- var addBtn = new Button();
- addBtn.setText("+ н¨ÈÎÎñ");
- addBtn.setColor(66, 133, 244);
- addBtn.setTextColor(255, 255, 255);
- addBtn.setHeight(50);
- addBtn.onClick(function() {
- printl("н¨ÈÎÎñ");
- showToast("н¨ÈÎÎñ¹¦ÄÜ");
- });
- page.addView(addBtn);
-
- return page;
- }
- // ´´½¨ÈÎÎñ¿¨Æ¬
- function createTaskCard(task) {
- var card = new Vertical();
- card.setBackgroundColor(255, 255, 255);
-
- // Ìí¼Óµã»÷ʼþ
- card.onClick = function() {
- printl("²é¿´ÈÎÎñ: " + task.title);
- showToast("ÈÎÎñ: " + task.title);
- };
-
- var titleRow = new Horizontal();
-
- var priorityColor = task.priority === "¸ß" ? [244, 67, 54] :
- task.priority === "ÖÐ" ? [255, 152, 0] : [76, 175, 80];
-
- var priorityBadge = new Label();
- priorityBadge.setText(task.priority);
- priorityBadge.setTextColor(priorityColor[0], priorityColor[1], priorityColor[2]);
- priorityBadge.setFontSize(12);
- priorityBadge.setBackgroundColor(priorityColor[0], priorityColor[1], priorityColor[2]);
- titleRow.addView(priorityBadge);
-
- var space = new Label();
- space.setWidth(10);
- titleRow.addView(space);
-
- var titleLabel = new Label();
- titleLabel.setText(task.title);
- titleLabel.setTextColor(50, 50, 50);
- titleLabel.setFontSize(15);
- titleRow.addView(titleLabel);
-
- card.addView(titleRow);
-
- var infoRow = new Horizontal();
-
- var statusLabel = new Label();
- statusLabel.setText(task.status);
- statusLabel.setTextColor(120, 120, 120);
- statusLabel.setFontSize(12);
- infoRow.addView(statusLabel);
-
- var timeLabel = new Label();
- timeLabel.setText("⏰ " + task.time);
- timeLabel.setTextColor(150, 150, 150);
- timeLabel.setFontSize(12);
- infoRow.addView(timeLabel);
-
- card.addView(infoRow);
-
- return card;
- }
- // ====================== ´´½¨¿ì½Ý¹¤¾ßÒ³ ======================
- function createToolPage() {
- var page = new Vertical();
- page.setSpacing(15);
- page.setBackgroundColor(248, 250, 252);
-
- // ±êÌâ
- var header = new Horizontal();
- header.setBackgroundColor(255, 255, 255);
-
- var titleLabel = new Label();
- titleLabel.setText("🛠️ ¿ì½Ý¹¤¾ß");
- titleLabel.setTextColor(50, 50, 50);
- titleLabel.setFontSize(20);
- header.addView(titleLabel);
-
- page.addView(header);
-
- // ¹¤¾ßÍø¸ñ
- var toolsGrid = new Vertical();
- toolsGrid.setSpacing(15);
-
- var toolRows = [
- [
- {icon: "🧮", name: "¼ÆËãÆ÷", color: [66, 133, 244]},
- {icon: "📏", name: "µ¥Î»×ª»»", color: [52, 168, 83]},
- {icon: "💱", name: "»ãÂÊ", color: [251, 188, 5]}
- ],
- [
- {icon: "📝", name: "¼Çʱ¾", color: [156, 39, 176]},
- {icon: "🔍", name: "ËÑË÷", color: [233, 30, 99]},
- {icon: "📷", name: "ɨÂë", color: [0, 150, 136]}
- ],
- [
- {icon: "🌐", name: "·Òë", color: [33, 150, 243]},
- {icon: "📅", name: "ÈÕÀú", color: [255, 87, 34]},
- {icon: "⏱️", name: "¼ÆÊ±Æ÷", color: [121, 85, 72]}
- ]
- ];
-
- for (var i = 0; i < toolRows.length; i++) {
- var row = new Horizontal();
- row.setSpacing(10);
-
- for (var j = 0; j < toolRows[i].length; j++) {
- var toolBtn = createToolButton(toolRows[i][j]);
- row.addView(toolBtn);
- }
-
- toolsGrid.addView(row);
- }
-
- page.addView(toolsGrid);
-
- return page;
- }
- // ´´½¨¹¤¾ß°´Å¥
- function createToolButton(tool) {
- var btn = new Button();
- btn.setText(tool.icon + "\n" + tool.name);
- btn.setColor(tool.color[0], tool.color[1], tool.color[2]);
- btn.setTextColor(255, 255, 255);
- btn.setWidth(115);
- btn.setHeight(100);
- btn.onClick(function() {
- printl("´ò¿ª¹¤¾ß: " + tool.name);
- showToast(tool.name + " ¹¤¾ß");
- });
- return btn;
- }
- // ====================== ´´½¨Êý¾Ý¼à¿ØÒ³ ======================
- function createDataPage() {
- var page = new Vertical();
- page.setSpacing(15);
- page.setBackgroundColor(248, 250, 252);
-
- // ±êÌâ
- var header = new Horizontal();
- header.setBackgroundColor(255, 255, 255);
-
- var titleLabel = new Label();
- titleLabel.setText("📊 Êý¾Ý¼à¿Ø");
- titleLabel.setTextColor(50, 50, 50);
- titleLabel.setFontSize(20);
- header.addView(titleLabel);
-
- page.addView(header);
-
- // Êý¾Ý¸ÅÀÀ¿¨Æ¬
- var overviewCard = new Vertical();
- overviewCard.setBackgroundColor(255, 255, 255);
-
- var overviewTitle = new Label();
- overviewTitle.setText("±¾ÖܸÅÀÀ");
- overviewTitle.setTextColor(80, 80, 80);
- overviewTitle.setFontSize(16);
- overviewCard.addView(overviewTitle);
-
- var dataItems = [
- {label: "Íê³ÉÈÎÎñ", value: "28", unit: "¸ö", color: [66, 133, 244]},
- {label: "¹¤×÷ʱ³¤", value: "35.5", unit: "Сʱ", color: [52, 168, 83]},
- {label: "ЧÂÊÆÀ·Ö", value: "92", unit: "·Ö", color: [251, 188, 5]}
- ];
-
- // Êý¾ÝÏîÌí¼Óµã»÷½»»¥
- for (var i = 0; i < dataItems.length; i++) {
- var dataRow = new Horizontal();
- var itemData = dataItems[i]; // ±£´æµ±Ç°Êý¾Ýµ½¾Ö²¿±äÁ¿£¬±ÜÃâ±Õ°üÎÊÌâ
-
- var label = new Label();
- label.setText(itemData.label);
- label.setTextColor(100, 100, 100);
- label.setFontSize(14);
- dataRow.addView(label);
-
- var valueLabel = new Label();
- valueLabel.setText(itemData.value + itemData.unit);
- valueLabel.setTextColor(itemData.color[0], itemData.color[1], itemData.color[2]);
- valueLabel.setFontSize(18);
- dataRow.addView(valueLabel);
-
- // Ϊÿ¸öÊý¾ÝÐÐÌí¼Óµã»÷°´Å¥
- var clickBtn = new Button();
- clickBtn.setText("ÏêÇé");
- clickBtn.setColor(itemData.color[0], itemData.color[1], itemData.color[2]);
- clickBtn.setTextColor(255, 255, 255);
- clickBtn.setWidth(60);
- clickBtn.setHeight(30);
- clickBtn.onClick(function() {
- printl("²é¿´" + itemData.label + "ÏêÇé");
- showToast(itemData.label + "ÏêϸÐÅÏ¢");
- });
- dataRow.addView(clickBtn);
-
- overviewCard.addView(dataRow);
- }
-
- page.addView(overviewCard);
-
- // Ç÷ÊÆÍ¼±íռλ
- var chartCard = new Vertical();
- chartCard.setBackgroundColor(255, 255, 255);
- chartCard.setContainerSize(380, 200);
-
- var chartTitle = new Label();
- chartTitle.setText("ÈÎÎñÍê³ÉÇ÷ÊÆ");
- chartTitle.setTextColor(80, 80, 80);
- chartTitle.setFontSize(16);
- chartCard.addView(chartTitle);
-
- var chartPlaceholder = new Label();
- chartPlaceholder.setText("📈 ͼ±íÇøÓò\n(Êý¾Ý¿ÉÊÓ»¯)");
- chartPlaceholder.setTextColor(180, 180, 180);
- chartPlaceholder.setFontSize(14);
- chartPlaceholder.setTextAlignment("center");
- chartCard.addView(chartPlaceholder);
-
- page.addView(chartCard);
-
- return page;
- }
- // ====================== Õ˺ÅÅäÖú¯Êý ======================
- function openAccountConfig() {
- printl("´ò¿ªÕ˺ÅÅäÖýçÃæ");
-
- // »ñÈ¡µ±Ç°ÅäÖõÄÕ˺ÅÃÜÂë
- var currentAccount = config.getConfig("panda_account") || "";
- var currentPassword = config.getConfig("panda_password") || "";
-
- printl("µ±Ç°Õ˺Å: " + currentAccount);
- printl("µ±Ç°ÃÜÂë: " + currentPassword);
-
- // ÏÔʾÅäÖÃÌáʾ
- toast.show("Õ˺ÅÅäÖÃ˵Ã÷:\n\nÇëÔڽű¾ÖÐÔËÐÐÒÔÏ´úÂëÉèÖÃÕ˺ÅÃÜÂë:\n\nconfig.setConfig('panda_account', 'ÄúµÄÕ˺Å')\nconfig.setConfig('panda_password', 'ÄúµÄÃÜÂë')\n\n»òÕßÖ±½ÓÔÚ'н¨±Ê¼Ç'°´Å¥Ê¹ÓÃʱ×Ô¶¯ÌáʾÅäÖÃ");
-
- // Èç¹ûÓÐÅäÖã¬ÏÔʾµ±Ç°Öµ
- if (currentAccount != "" && currentPassword != "") {
- toast.show("µ±Ç°ÒÑÅäÖÃ:\nÕ˺Å: " + currentAccount + "\nÃÜÂë: " + currentPassword);
- }
- }
- // ToastÌáʾº¯Êý
- function showToast(message) {
- printl("[Ìáʾ] " + message);
- // ÔÚÊÖ»úÉÏÏÔʾÍÂ˾µ¯´°
- try {
- toast.show(message); // Ö±½ÓʹÓÃÈ«¾Ötoast¶ÔÏó
- } catch(e) {
- printl("ToastÏÔʾʧ°Ü: " + e.message);
- }
- }
- printl("ÖÇÄܸöÈËÖúÊÖÒÑÆô¶¯");
¸´ÖÆ´úÂë
|
|