#pragma once #include "lvgl.h" #include #include // 当前界面/模式上下文 typedef enum { NAV_CTX_HOME, // Home界面 NAV_CTX_IMG, // Img界面(正常浏览) NAV_CTX_IMG_DELETE, // Img界面(删除模式) NAV_CTX_SET, // Set界面(焦点导航) NAV_CTX_SET_BRIGHTNESS, // Set界面(亮度调节模式) NAV_CTX_FLASHLIGHT, // 应援灯全屏模式 } nav_context_t; // Set界面焦点索引 typedef enum { SET_FOCUS_NONE = -1, // 无选中 SET_FOCUS_LOW_POWER = 0,// 节能 SET_FOCUS_FLASHLIGHT, // 应援灯 SET_FOCUS_DELETE, // 删除 SET_FOCUS_BRIGHTNESS, // 亮度 SET_FOCUS_COUNT, // 焦点总数(用于循环) } set_focus_item_t; // 初始化按键导航管理器(在button_init之后调用) void key_nav_init(void); // 获取当前导航上下文 nav_context_t key_nav_get_context(void); // 设置导航上下文(界面切换时调用) void key_nav_set_context(nav_context_t ctx); // 获取Set界面当前焦点 set_focus_item_t key_nav_get_set_focus(void); // 重置Set界面焦点(进入/离开Set时调用) void key_nav_reset_set_focus(void);