亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android平臺的“字元碼”輸入法研究與實(shí)現(xiàn)

        2017-12-11 09:55:27劉正標(biāo)
        電腦知識與技術(shù) 2017年31期

        劉正標(biāo)

        摘要:該文根據(jù)筆者多年對漢字的字形結(jié)構(gòu)以及筆畫特點(diǎn)的研究比較和分析,提出了一種將漢字分解為字元,并將字元合理分布到手機(jī)的0-9數(shù)字鍵中,利用數(shù)字鍵進(jìn)行中文輸入的思路和方法;該輸入法的實(shí)現(xiàn)非常適合于那些沒有學(xué)過拼音、不了解阿拉伯字母的中老年人進(jìn)行中文輸入;同時(shí)該文的思路也可以應(yīng)用在大部分具有數(shù)字鍵盤的設(shè)備的中文輸入。

        關(guān)鍵詞:字元;中文輸入法;數(shù)字小鍵盤;Android;輸入法框架;字庫

        中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2017)31-0057-02

        1 背景

        隨著智能手機(jī)對人們生活的影響越來越大,利用智能手機(jī)進(jìn)行中文輸入交流已經(jīng)成為了人們生活中不可缺少的內(nèi)容,特別是目前微信和QQ等網(wǎng)絡(luò)通訊軟件已經(jīng)代替了以前傳統(tǒng)短信通訊。因此應(yīng)用于手機(jī)上的中文輸入法軟件顯得尤為重要,也產(chǎn)生了不少各種各樣的手機(jī)中文輸入法,比如基于筆畫的筆畫輸入法,基于拼音的拼音輸入法,還有基于各種方言的輸入法也層出不窮。然而對于廣大沒學(xué)過拼音或者不了解阿拉伯字母的中老年人迫切需要一種能用于手機(jī)的簡單易用的中文輸入軟件。因此,如何利用簡單的0-9數(shù)字進(jìn)行快速有效的漢字輸入,也是筆者一直研究的課題。本文對漢字輸入法的規(guī)則和手機(jī)數(shù)字鍵盤漢字輸入的規(guī)律進(jìn)行研究,提出了一種能應(yīng)用在Android平臺的基于數(shù)字編碼的形碼中文輸入法以及在Android平臺上的軟件實(shí)現(xiàn)方法。

        2 輸入法開發(fā)環(huán)境及相關(guān)技術(shù)

        Android 簡介,Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動設(shè)備,如智能手機(jī)和平板電腦,由Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。

        Android IMF,全稱為Android Input Method Framework,中文解釋為輸入方法框架。是由google公司提供給用戶的一種輸入法編程接口,主要由input method manager、input method(IME)、client application三部分組成,分別用來管理各部分的交互、實(shí)現(xiàn)一個允許用戶生成文本的獨(dú)立交互模塊、通過輸入法管理器控制輸入焦點(diǎn)和IME的狀態(tài)等功能。

        Android SDK,全稱為Android Software Development Kit,中文解釋為Android軟件開發(fā)工具包。是Android平臺專屬軟件開發(fā)工具包。

        Eclipse,是開放源代碼的、基于Java的一種可擴(kuò)展開發(fā)平臺。它提供了一個框架和一組服務(wù),通過插件組件來構(gòu)建需要的開發(fā)環(huán)境。通過安裝不同的插件Eclipse能支持不同的編程語言,如Java、Python和C++等。Eclipse是目前程序員使用最廣的集成開發(fā)工具。

        3 字元輸入法實(shí)現(xiàn)及關(guān)鍵技術(shù)

        3.1 編碼方式

        筆者通過對各種漢字輸入法和漢字結(jié)構(gòu)的研究比較之后發(fā)現(xiàn),在設(shè)計(jì)漢字的字元時(shí),除了要考慮到漢字的部首,還要考慮到漢字的形,因此本輸入法根據(jù)組成漢字的字元的記憶特點(diǎn)和使用頻率,將字形和部首進(jìn)行合理設(shè)計(jì),稱為“字元碼”,然后將它們按使用頻率分布到0-9這10個數(shù)字中。

        3.2 輸入法設(shè)計(jì)思路

        字元碼輸入法設(shè)計(jì)的目的是充分利用數(shù)字簡單的優(yōu)點(diǎn)來提高輸入速度,所以在設(shè)計(jì)輸入法時(shí)筆者主要從如下幾個方面進(jìn)行考慮:

        1) 能進(jìn)行詞組輸入,設(shè)計(jì)規(guī)則為:如果是雙字詞取每個詞的前兩個字元編碼;如果是三字詞取前兩個字的首字元編碼以及第三個字的前兩個字元的編碼;四字詞則直接從每個漢字中取一個編碼;多字詞以及整句設(shè)計(jì)為取前三個字的第首字編碼和最后一個字的首字編碼。

        2) 能造詞和整句輸入,對于輸入過程中經(jīng)常使用的詞或整句,提供造詞功能,將用戶造的詞加入到用戶詞庫中,以方便下次輸入。

        3) 能進(jìn)行自動調(diào)頻,根據(jù)用戶的輸入習(xí)慣對經(jīng)常輸入的重碼字,按使用的頻率自動調(diào)整到候選列表的前部。

        4) 能進(jìn)行詞語聯(lián)想,詞語聯(lián)想能大大提高手機(jī)輸入速度,因?yàn)楸拒浖蔡峁┝嗽~語聯(lián)想功能。

        5) 能進(jìn)行簡體和繁體字的輸入切換。

        3.3 代碼設(shè)計(jì)與實(shí)現(xiàn)

        1) 界面實(shí)現(xiàn)

        輸入法界面實(shí)現(xiàn)主要采用Android IMF編程,借鑒目前比較流行的手機(jī)輸入法,界面風(fēng)格保持簡潔、清新、易用。輸入法主界面如圖1所示。

        2) 字庫的設(shè)計(jì)

        Android平臺集成了SQLite作為內(nèi)置數(shù)據(jù)庫,SQLite具有占用資源少的優(yōu)勢,因此本輸入法的字庫編碼都采用碼表的方式存入SQLite數(shù)據(jù)庫中。字段結(jié)構(gòu)如下表,其中keys字段存放的是字詞編碼,word字段存放的是對應(yīng)的字詞,_id字段存放的是調(diào)頻用的優(yōu)先級。

        DROP TABLE "words";

        CREATE TABLE "words" (

        "keys" TEXT,

        "word" TEXT,

        "_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL

        );

        3) 關(guān)鍵技術(shù)代碼

        詞語聯(lián)想功能是本輸入法的一大亮點(diǎn),用戶輸入詞語后通過查詢聯(lián)想數(shù)據(jù)庫,判斷該詞語有哪些后續(xù)的聯(lián)想關(guān)聯(lián)詞語,讀出這些詞語按優(yōu)先級顯示在候選窗口,主要代碼如下:

        public void pickSuggestionManually(int index,CharSequence mSelectedString) {

        if (mCompletionOn && mCompletions != null && index >= 0

        && index < mCompletions.length) {

        CompletionInfo ci = mCompletions[index];

        getCurrentInputConnection().commitCompletion(ci);

        if (mCandidateView != null) {

        mCandidateView.clear();

        }

        updateShiftKeyState(getCurrentInputEditorInfo());

        }else if(mComposing.length()>0||(mWordTemp!=null&& mWordTemp.length() == 1) ) {

        CharSequence mSelectedString_temp = null;

        if(((mSelectedString.toString()).substring(0, 1).matches("[\u4e00-\u9fa5]+"))&& mSelectedString.length()>1){

        mSelectedString_temp=mSelectedString.subSequence(1, mSelectedString.length());

        }else{

        mSelectedString_temp = mSelectedString;

        }

        getCurrentInputConnection().commitText(mSelectedString_temp, 1);

        mWordTemp = mSelectedString.toString();

        if(mWordTemp.length() == 1){

        updateCandidates();

        }else{

        mCandidateView.clear();

        mWordTemp = null;

        }

        }

        4 結(jié)束語

        本文從漢字的字形和結(jié)構(gòu)出發(fā),研究了一種基于阿拉數(shù)字0-9編碼的簡便輸入法,并在流行的Android平臺上將其實(shí)現(xiàn)。該輸入法設(shè)計(jì)模塊包括有簡繁輸入功能、詞組輸入功能、詞語聯(lián)想功能以及用戶造詞功能。整個輸入設(shè)計(jì)簡單實(shí)用,人機(jī)界面友好,字詞庫豐富。雖然說字元碼輸入法的在 Android 平臺已經(jīng)實(shí)現(xiàn)的大部分功能,但是由于本人時(shí)間和精力有限,本系統(tǒng)將來仍需要進(jìn)行各方面的完善。

        參考文獻(xiàn):

        [1] 王岳. Android 平臺中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)[D]. 蘇州: 蘇州大學(xué), 2012.

        [2] Android.維基百科, 自由的百科全書[EB/OL]. http://zh.wikipedia.org/wiki/Android.

        [3] Android 系統(tǒng)的架構(gòu)基礎(chǔ)知識[EB/OL]. http://www.android-study.com/jichuzhishi/550.html.

        [4] 陳友亮. 基于 Android 平臺輸入法設(shè)計(jì)和聯(lián)想功能實(shí)現(xiàn)[D]. 汕頭: 汕頭大學(xué): 2012.

        [5] 陳欽梧. 新音形輸入法的設(shè)計(jì)及其在 Android 平臺上的實(shí)現(xiàn)[D]. 汕頭: 汕頭大學(xué), 2012.

        [6] 陳欽梧, 彭小忠. 新音形編碼漢字輸入法設(shè)計(jì)[J]. 計(jì)算機(jī)工程與應(yīng)用, 2014, 50(1):36-40.

        在线播放亚洲第一字幕| 高清不卡日本v二区在线| 日产精品高潮一区二区三区5月| 好男人社区影院www| 好大好硬好爽免费视频| 日韩免费高清视频网站| 亚洲无人区一码二码国产内射| 国产三级黄色的在线观看 | 麻豆五月婷婷| 白白白色视频在线观看播放| 日韩中文字幕在线观看一区| 激情综合色综合久久综合| 日本成人久久| 亚洲日韩区在线电影| 亚洲天堂线上免费av| 狠狠综合亚洲综合亚洲色| 日本亚洲色大成网站www久久| 成人xx免费无码| 国产亚洲精品综合一区二区| 免费a级毛片无码免费视频首页| 久久精品国产亚洲av天美| 午夜精品久久久久久久| 少妇特黄a一区二区三区| 国产精品久久久久久久成人午夜| 亚洲中文字幕精品一区二区| 中文字幕高清不卡视频二区| 一边做一边喷17p亚洲乱妇50p| 中文无码成人免费视频在线观看| 午夜人妻中文字幕福利| 成人国产精品一区二区八戒网| 丰满人妻熟妇乱又伦精品软件| 久久久久国产一级毛片高清版A| av在线不卡一区二区三区| 天堂8在线新版官网| 国产女女精品视频久热视频| 丰满人妻AV无码一区二区三区| 日本按摩偷拍在线观看| 亚洲av日韩av在线观看| 中文字幕亚洲综合久久菠萝蜜| 亚洲一区二区三区免费av| √天堂资源中文www|