<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團論壇3G手機技術專區Android應用開發 → Android輸入法開發實例解析


      共有7153人關注過本帖樹形打印

    主題:Android輸入法開發實例解析

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    Android輸入法開發實例解析  發帖心情 Post By:2010-12-3 11:16:44

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

    支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

    返回版面帖子列表

    Android輸入法開發實例解析








    簽名