簡單講:SetLeftSoftkeyFunction是高級版的SetKeyHandler
SetLeftSoftkeyFunction是專門設置左軟鍵功能的函數,SetKeyHandler可以設置任何按鍵,既然SetKeyHandler已經可以設置了,爲何還要弄個SetLeftSoftkeyFunction出來?
這就是SetLeftSoftkeyFunction高級的地方:SetLeftSoftkeyFunction函數在設置功能之前,會去檢查左軟鍵的狀態(包括顯示的文字、圖片和使狀態),因爲給空白的軟鍵設置功能是無意義的。這是我說它要高級的第一點。也因此,設置左軟鍵文字和圖片的函數ChangeLeftSoftkey或change_left_softkey必須在SetLeftSoftkeyFunction之前調用。
SetLeftSoftkeyFunction的高級還體現在UI上,左軟鍵按下和彈起會有不同的顯示。SetKeyHandler由於可以設置所有按鍵,而不是所有按鍵都會在屏幕上顯示,所以它不會管顯示效果這塊。
這些東西並不難懂,所需的只是一點讀碼能力。