1樓
wangxinxin 發(fā)表于:2010-12-3 11:16:44
這里我們建立表1為BiHua,同時構建兩個字段,字段1為“input”來存放輸入的,字段2為“value”為匹配出來的值,這里不難實現比如我們輸入“111211”就可以匹配出兩個這樣筆畫的字,分別是“彗”和“慧”,而1筆就可以輸入好的字有“一不在有來大地到要可而于下過事”,這里我們可以把常用字優(yōu)先排到前面。
2.五筆輸入法 這里我們建立表名為CN,這里常規(guī)的字、詞組、五筆都可以使用同一張表,這樣對應查找更方便些,平時使用王碼的打字員輸入“ep”可以匹配出“愛”字,輸入“jqb”匹配出“昂”字。這里ep就是input字段,而昂就是value字段在表CN中,依次類推。
3.英文輸入法這個就更簡單了,把常用的單詞表全部放入到數據庫中,輸入a自動匹配apple、arm這樣的單詞,類似autocomplete是把,其實就是包含關系的,這里找個詞典直接導入即可。
4.聯想輸入法 平時一個字一個字的輸入老慢,同樣我們不用很負責的算法,直接加入類似“zhongguo”對應“
中國”這樣的詞組就OK了,經過
Android123的初步測試SQLite數據庫在Android上還是蠻快的,但是還是不
推薦這樣制作輸入法,至少商用產品不能這樣
開發(fā)的。
5. 9宮格輸入法平時不用G1附帶的QWERTY鍵盤打字時可以嘗試下新的9宮格輸入法,比如在傳統(tǒng)
手機鍵盤上,我們可以發(fā)現1鍵對應的是符號,2鍵上刻有 a b c這三個字母,而9鍵上刻有 w x y z 這個四個字母,正常不用遍歷算法一樣可以直接記錄下按鍵順序,比如輸入“ding”這個拼音就是3464,而輸入“chen”就是2436,最后再使用方法4中的直接查翻譯過來就是中文字了,呵呵是不是很簡單呢?
三、選字設計 這里我們充分發(fā)揮Android
平臺的觸摸優(yōu)勢,通過Gallery控件可以直接實現觸摸滾動,每個字我們可以當作一個TextView對待,因為都是派生于View類我們直接使用listener來攔截按下事件,就達到了觸摸選字,如果是QWERTY布局的話按鍵排列比較緊密,可以使用Android平臺提供的View類的長按listener來獲取長按事件,顯示一個放大的按下按鈕信息,這點可以參考iPhone手機的輸入法。