089、LVGL基礎(chǔ)控件:按鈕矩陣(Btnmatrix)
LVGL基礎(chǔ)控件:按鈕矩陣(Btnmatrix)上周調(diào)試一個(gè)智能家居面板項(xiàng)目,客戶(hù)要求在一屏內(nèi)顯示16個(gè)場(chǎng)景快捷鍵,每個(gè)按鍵還要支持長(zhǎng)按觸發(fā)配置。我第一反應(yīng)是用16個(gè)lv_btn堆Grid布局,結(jié)果內(nèi)存直接爆了——STM32H743的RAM被吃掉一大塊,界面還卡頓。后來(lái)?yè)Q成Btnmatrix,一個(gè)控件搞定,內(nèi)存占用不到原來(lái)的十分之一。這就是今天要聊的按鈕矩陣。從一次內(nèi)存崩潰說(shuō)起那次翻車(chē)讓我意識(shí)到,LVGL的Btnmatrix不是簡(jiǎn)單的“按鈕數(shù)組”,它底層用位圖管理按鍵狀態(tài),所有子按鈕共享同一個(gè)父控件的繪制上下文。這意味著你創(chuàng)建100個(gè)按鈕,它不會(huì)生成100個(gè)獨(dú)立對(duì)象,而是用一個(gè)控件管理100個(gè)“虛擬按鈕”。這對(duì)資源受限的嵌入式設(shè)備是救命的設(shè)計(jì)。創(chuàng)建按鈕矩陣lv_obj_t*btnm=lv_btnmatrix_create(lv_scr_act(

相關(guān)新聞

088、LVGL選項(xiàng)卡切換與內(nèi)容管理

088、LVGL選項(xiàng)卡切換與內(nèi)容管理

LVGL選項(xiàng)卡切換與內(nèi)容管理 從一次詭異的界面卡死說(shuō)起 上周調(diào)試一塊基于STM32F429的工控屏,客戶(hù)反饋說(shuō)切換選項(xiàng)卡時(shí)偶爾會(huì)卡死,復(fù)位后又能正常工作。我盯著邏輯分析儀看了半天,發(fā)現(xiàn)每次卡死前都伴隨著一次“快速雙擊”選項(xiàng)卡標(biāo)簽——用戶(hù)手速太快,在動(dòng)畫(huà)還沒(méi)結(jié)束時(shí)就觸發(fā)了…

2026/7/29 15:47:23 閱讀更多
LeetCode 76題解析:滑動(dòng)窗口與哈希表實(shí)現(xiàn)最小覆蓋子串

LeetCode 76題解析:滑動(dòng)窗口與哈希表實(shí)現(xiàn)最小覆蓋子串

1. 題目解析與核心思路 LeetCode 76題"最小覆蓋子串"是算法面試中的經(jīng)典高頻題目,也是Hot100題庫(kù)中的必刷題目。題目要求給定一個(gè)字符串S和一個(gè)字符串T,在S中找出包含T所有字符的最短連續(xù)子串。這道題完美結(jié)合了滑動(dòng)窗口和哈希表兩大核心算法思…

2026/7/29 15:37:18 閱讀更多
貨運(yùn)搬家平臺(tái)開(kāi)發(fā)排名,司機(jī)資質(zhì)檔案加密存儲(chǔ)技術(shù)方案

貨運(yùn)搬家平臺(tái)開(kāi)發(fā)排名,司機(jī)資質(zhì)檔案加密存儲(chǔ)技術(shù)方案

貨運(yùn)搬家平臺(tái)開(kāi)發(fā)排名,司機(jī)資質(zhì)檔案加密存儲(chǔ)技術(shù)方案貨運(yùn)搬家平臺(tái)的核心信任根基與合規(guī)底線,在于司機(jī)資質(zhì)檔案的規(guī)范化、安全化存儲(chǔ)。區(qū)別于普通同城配送平臺(tái),貨運(yùn)、搬家場(chǎng)景涉及大型車(chē)輛運(yùn)輸、上門(mén)入戶(hù)服務(wù)、大額物品轉(zhuǎn)運(yùn),司機(jī)駕…

2026/7/29 16:57:25 閱讀更多
同城物流小程序哪家靠譜,訂單取消退款自動(dòng)處理邏輯

同城物流小程序哪家靠譜,訂單取消退款自動(dòng)處理邏輯

同城物流小程序哪家靠譜,訂單取消退款自動(dòng)處理邏輯同城物流小程序涵蓋小件跑腿、大件貨運(yùn)、同城搬家、點(diǎn)對(duì)點(diǎn)配送等多元化場(chǎng)景,訂單狀態(tài)流轉(zhuǎn)快、取消場(chǎng)景多樣、退款觸發(fā)條件復(fù)雜,區(qū)別于傳統(tǒng)電商固定售后流程。在同城物流賽道中,判…

2026/7/29 16:57:25 閱讀更多
動(dòng)畫(huà)系統(tǒng)中的狀態(tài)機(jī)設(shè)計(jì):從簡(jiǎn)單過(guò)渡到復(fù)雜編排的架構(gòu)演進(jìn)

動(dòng)畫(huà)系統(tǒng)中的狀態(tài)機(jī)設(shè)計(jì):從簡(jiǎn)單過(guò)渡到復(fù)雜編排的架構(gòu)演進(jìn)

動(dòng)畫(huà)系統(tǒng)中的狀態(tài)機(jī)設(shè)計(jì):從簡(jiǎn)單過(guò)渡到復(fù)雜編排的架構(gòu)演進(jìn) 一、引子:if-else 堆砌的動(dòng)畫(huà)代碼無(wú)法維護(hù) 一個(gè)下拉菜單的動(dòng)畫(huà)需求: 打開(kāi)時(shí):遮罩淡入 → 菜單從上方滑入 → 列表項(xiàng)依次彈出(stagger)關(guān)閉時(shí)&#…

2026/7/29 16:57:25 閱讀更多
2026年Java面試高頻考點(diǎn)與備戰(zhàn)策略

2026年Java面試高頻考點(diǎn)與備戰(zhàn)策略

1. 2026年Java面試全景解析最近整理了一份2026年最新的大廠Java面試題庫(kù),涵蓋了1200道高頻考點(diǎn)。這份資料特別適合準(zhǔn)備"金三銀四"跳槽季的開(kāi)發(fā)者,從Java基礎(chǔ)到分布式架構(gòu),從算法到系統(tǒng)設(shè)計(jì),基本覆蓋了所有技術(shù)棧的考察點(diǎn)…

2026/7/29 16:57:25 閱讀更多
大模型 Token 平臺(tái)怎么選?2026 年四類(lèi)主流平臺(tái)深度對(duì)比

大模型 Token 平臺(tái)怎么選?2026 年四類(lèi)主流平臺(tái)深度對(duì)比

大模型 Token 平臺(tái),是指以 API 形式提供大語(yǔ)言模型推理調(diào)用、按 Token 消耗計(jì)費(fèi)的服務(wù)基礎(chǔ)設(shè)施。對(duì)于開(kāi)發(fā)者和企業(yè)而言,選對(duì)平臺(tái)意味著穩(wěn)定的訪問(wèn)、可控的成本和足夠靈活的模型切換能力。2026 年市場(chǎng)上主流平臺(tái)已按定位分化為四個(gè)清晰的類(lèi)別,…

2026/7/29 16:47:24 閱讀更多
面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

前兩個(gè)月,我在重構(gòu) AlgoMooc 網(wǎng)站過(guò)程中,發(fā)現(xiàn)一個(gè)問(wèn)題:在 Claude Code 里把一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,結(jié)果可能比 1 個(gè) agent 從頭干到尾還慢? 大多數(shù)人的第一反應(yīng)是反過(guò)來(lái)的:活是并行干的&#…

2026/7/29 0:15:24 閱讀更多
# 鴻蒙 HarmonyOS 應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫(huà)渲染精講

# 鴻蒙 HarmonyOS 應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫(huà)渲染精講

一、應(yīng)用概述 骰子(Dice Roller) 是一款經(jīng)典的休閑娛樂(lè)應(yīng)用,模擬了真實(shí)擲骰子的過(guò)程。應(yīng)用投擲兩個(gè)骰子(六面標(biāo)準(zhǔn)骰),使用 Unicode 骰面符號(hào)直觀展示每個(gè)骰子的點(diǎn)數(shù),并伴有快速滾動(dòng)的動(dòng)畫(huà)效果?!?/p>

2026/7/29 0:15:24 閱讀更多