(圖一)
這個輸入法作為一個UI組件來出現, 界面上通過Graphics對象來畫,控制上通過接收keyPressed(int keycode)和keyReleased(int keycode)的按鍵值進行鍵盤操作。大體功能如下:
1,支持漢字,英文大小寫,數字,特殊符號輸入。
2,閃動的光標指示,可以通過方向鍵進行移動,便於插入和修改文字。
3,可以限制功能,比如只允許輸入漢字,只允許輸入英文等等。
4,字符的復制,粘貼,剪切功能(尚未實現)。
當然這個輸入法類需要一個TextfIEld或者TextBox類來配合使用,當然這兩個類也要用低級界面來從新實現才可以。
這個輸入法由一個數據文件(字庫)和一個類文件組成,數據文件大約10K左右,類文件大約1000行。字庫包含所有常用漢字,實際占用的Heap內存大約在40k左右,或者低於這個值,因為測試的時候,我的界面上還有其它很多的UI在同時運行。這個輸入法對於J2ME的應用程序的界面風格會起到很大的幫助,所以我想這點內存花銷應該是值得的。