AWTK是基于C語(yǔ)言開(kāi)發(fā)的跨平臺(tái)GUI框架?!禔WTK使用經(jīng)驗(yàn)》系列文章將介紹開(kāi)發(fā)AWTK過(guò)程中一些常見(jiàn)問(wèn)題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)自定義進(jìn)度條?這些都會(huì)在系列文章進(jìn)行解答。
假設(shè)目前需要在AWTK程序中用到中文輸入法,并且要自定義輸入法的聯(lián)想詞,此時(shí)需要用到AWStudio添加軟鍵盤(pán)和輸入法。下面將介紹如何使用AWStudio在項(xiàng)目中添加中文輸入法以及如何修改聯(lián)想詞,并且如何移植到嵌入式設(shè)備中。下圖是實(shí)現(xiàn)中文輸入法并移植到 ZTP800示教器 的效果圖:
圖1ZTP800中文輸入法效果圖
使用AWStudio添加軟鍵盤(pán)
在AWStudio中帶有軟鍵盤(pán)的默認(rèn)樣式,用戶(hù)可以直接使用該軟鍵盤(pán)樣式。創(chuàng)建該默認(rèn)軟鍵盤(pán)也比較簡(jiǎn)單,只需點(diǎn)擊AWStudio的“新建窗體”按鈕,接著選擇“Keyboard”,確定后即可看到軟鍵盤(pán)的UI文件生成。圖2AWStudio添加默認(rèn)軟鍵盤(pán)接著還需要從awtk/3rd/gpinyin/data目錄將gpinyin.dat文件添加到項(xiàng)目資源目錄的data目錄下,例如:res/assets/default/raw/data,這里可以在AWStudio的資源管理器中點(diǎn)擊“導(dǎo)入”按鈕添加到“其他數(shù)據(jù)”分類(lèi)中。最后將軟鍵盤(pán)與控件關(guān)聯(lián),修改edit控件的“keyboard”屬性指定剛剛創(chuàng)建的軟鍵盤(pán)窗體。
圖3使用AWStudio導(dǎo)入gpinyin.dat
修改中文輸入法聯(lián)想詞
聯(lián)想詞是指在輸入了某個(gè)漢字或詞組后,輸入法根據(jù)該漢字或詞組提供其常用的組詞。如果想要修改聯(lián)想詞的順序或是增加新的詞語(yǔ)等,需要修改awtk/3rd/gpinyin/data目錄下的配置文件rawdict_utf16_65105_freq.txt。配置文件中包含了各個(gè)詞語(yǔ)的漢字、使用頻率和對(duì)應(yīng)的拼音,使用頻率數(shù)值越大,對(duì)應(yīng)的聯(lián)想詞越靠前。例如:下圖的“爸爸”使用頻率數(shù)值大于“巴巴”,那么當(dāng)輸入“baba”拼音時(shí),“爸爸”的顯示順序會(huì)比“巴巴”靠前。
圖4 聯(lián)想字庫(kù)配置文件
修改完配置文件后,在awtk目錄下打開(kāi)終端,執(zhí)行以下命令,該程序會(huì)生成一個(gè)新的gpinyin.dat,按照前面步驟拷貝到項(xiàng)目資源目錄,如:assets/default/raw/data/。
./bin/gpinyingen
將中文輸入法移植到嵌入式Linux平臺(tái)
嵌入式Linux的官方移植層awtk-linux-fb默認(rèn)加入了中文輸入法,用戶(hù)在PC上根據(jù)文章前面步驟添加好中文輸入法,使用AWStudio打包資源,將項(xiàng)目拷貝到交叉編譯環(huán)境下使用awtk-linux-fb交叉編譯應(yīng)用即可。
將中文輸入法移植到RTOS平臺(tái)
將中文輸入法代碼文件加入編譯
對(duì)于其它平臺(tái)如RTOS平臺(tái)添加中文輸入法的步驟會(huì)復(fù)雜一些,需要將中文輸入法相關(guān)的代碼文件加入編譯(比如將這些代碼文件添加到keil編譯),詳細(xì)步驟如下:
- 加入以下目錄的代碼文件:awtk/3rd/gpinyin/src;
- 加入代碼文件:awtk/src/input_engines/input_engine_pinyin.cpp;
- 去掉下面的代碼文件,不加入編譯:awtk/src/input_engines/input_engine_null.cpp;
- 加入下面的include路徑:awtk/3rd/gpinyin/include;
- 加入gpinyin.dat到應(yīng)用資源目錄data文件夾內(nèi)。
添加輸入法宏
- 在平臺(tái)對(duì)應(yīng)移植層的awtk_config.h文件內(nèi)定義宏:
WITH_IME_PINYIN
另外還需要取消以下兩個(gè)宏的定義:
- WITH_NULL_IMWITHOUT_INPUT_METHOD
-
軟鍵盤(pán)
+關(guān)注
關(guān)注
0文章
10瀏覽量
6340 -
示教器
+關(guān)注
關(guān)注
2文章
27瀏覽量
3724 -
awtk
+關(guān)注
關(guān)注
0文章
37瀏覽量
198
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論