999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android系統智能終端的藏文輸入法分析與實現

2014-04-29 09:44:08張繼偉
網絡空間安全 2014年4期

【 摘 要 】 移動互聯網時代已經到來,各種移動終端成為了人們交流與溝通的重要工具,然而少數民族文化信息的傳遞因為輸入法的缺失而受到了一定的限制,推動和發展少數民族文化需要從最基本的文字輸入法開始。針對以上問題,本文通過對藏文的特點、藏文文字的組成、國內外對藏文文字信息編碼等方面進行了探討和研究,在此基礎上分析了Android系統輸入法框架IMF的特點、組成及工作原理。最后依據Android系統輸入法的框架通過使用各種開發工具和方法,開發出了一款藏文輸入法,并通過了在Android系統終端上的測試。文章闡述了藏文在Android系統下輸入法的設計思想以及實現過程,介紹了該技術的設計原理以及流程。

【 關鍵詞 】 軟件開發;Android系統;智能終端應用;輸入法框架IMF;藏文輸入法;系統設計與實現

【 中圖分類號 】 TP391.14 【 文獻標識碼 】 A

1 引言

隨著移動互聯網時代的到來,各種信息化應用鋪天蓋地,大量的信息在人群間傳遞,而少數民族文化也需要一展風采,藏文化作為中華文化的重要成員,在信息時代發展藏民族文化至關重要,而輸入法是發展藏文化的基礎的基礎。從移動終端來看,Android系統與IOS系統獨領風騷,可惜Android系統自Android 1.5版本到最新的4.0版本都沒有在底層實現對藏文的支持,所以很有必要攻堅克難打造一款好用的、符合藏語特點的藏文輸入法。

2 Android系統藏文輸入法設計與實現

2.1 Android系統輸入法框架IMF

IMF是input method framework的簡稱, 它是Android 1.5新添加進去的一個重要功能,用來支持軟鍵盤、各種的輸入法。按照SDK文檔的敘述,一個IMF結構中包含三個主要的部分。

input method manager:管理各部分的交互。它是一個客戶端API,是整個輸入法框架(IMF)結構的核心,存在于各個應用程序的context中,用來溝通管理所有進程間交互的全局系統服務,可以通過Context.getSystemService()來獲取一個InputMethodManager的實例。

input method:實現一個允許用戶生成文本的獨立交互模塊。系統綁定一個當前的輸入法。使其創建和生成,決定輸入法何時隱藏或者顯示它的UI。同一時間只能有一個IME運行。

client application:通過輸入法管理器控制輸入焦點和IME的狀態。一次只能有一個客戶端使用IME。

Android系統的客戶端控件主要是TextView及其子類,客戶端控件是輸入法人機交互的起點,客戶端控件與輸入法服務和輸入法應用都有交互操作。Android系統的輸入法框架為輸入法應用定義了一個基類InputMethodService。InputMethodService提供了一個輸入法的標準實現。定義了輸入法生命周期內的重要函數,提供給開發人員進行相應的處理。輸入法應用的生命周期{3}:

當用戶觸發輸入法顯示的時候(客戶端控件獲得焦點),InputMethodService啟動。

1)調用onCreate() 函數,該函數在輸入法第一次啟動的時候調用,適合用來做一些初始化的設置。

2)調用onCreateInputView() 函數,在該函數中創建KeyboardView并返回。

3)調用onCreateCandidatesView()函數,在該函數中創建候選區實現并返回。

4)調用onStartInputView()函數來開始輸入內容。

5)輸入結束后調用onFinishInput()函數來結束當前的輸入。

6)如果移動到下一個輸入框則重復調用onStartInputView和onFinishInput函數。

7)在輸入法關閉的時候調用onDestroy() 函數。

2.2 藏文輸入法實現

Android系統中藏文輸入法要依據Android輸入法框架來完成,只不過關鍵點在于如何將藏文文字實現展現和輸入。為了能在通信網絡中順利傳輸以及防范不規則編碼的出現,依據本文開發出的藏文輸入法藏文采用Unicode國際編碼。整個開發環境基于Windows XP系統,在開發過程中使用的工具有Windows XP 自帶計算器、圖片制作工具MicroMedia Fireworks、Eclipse工具(eclipse-java-indigo-win32版本)、jdk 1.6、android-sdk-windows平臺2.1版本等,而開發所參考的模型為Android系統開源輸入法實例。

2.2.1 藏文基本文字編碼轉換

藏文(Tibetan)Unicode 編碼表[范圍(0F00-0FFF)共256個],但藏文文字中30個輔音字母、4個元音符號、以及5個反寫字母(用以拼外來語)最為常用,大部分常見藏文文字可以由這些基本字組合而成;所以需要將這些基本字根的十六進制Unicode編碼進行十進制的轉換,以便能在Android系統中識別。轉換可以使用windows自帶計算器進行轉換,部分轉換編碼對應關系如表1。

2.2.2 藏文基本文字輸入法圖片制作

由于Android系統底層沒有對藏文的支持,如果在開發中直接使用編碼的話,最后完成的輸入法操作面板為亂碼“□”,界面將會無法正常使用,而Android系統中的鍵盤文件提供了圖標功能,通過圖標標簽就可以將藏文正常顯示在鍵盤面板上。所以還需要將藏文輔音字、元音字等基本字制作成小圖片,圖片大小可以為17×30像素,格式可以是png或jpg等常見圖片格式,文字制作圖片可以使用FireWorks、PhotoShop等制圖工具,字形可以從該網址查詢http://www.marathon-studios.com/unicode/U0F40/Tibetan_Vowel_Sign_O,每次只需要變化該網址中的粗體部分。endprint

2.2.3 藏文輸入法實現及測試驗證

在eclipse開發環境中將Android系統開源輸入法實例進行工程導入,并將制作的全部藏文圖標導入res\drawable目錄下,然后在res\xml目錄下新建鍵盤文件并將前面轉換和制作的圖標進行對應,比如:從字形上可以對應的十進制為3904和3984,而其對應的圖標為圖片a1,代碼如下:

其他藏文基本字以此類推,主要是做好全鍵盤的布局,以方便使用者使用。

然后在SoftKeyboard.Java中進行新建鍵盤文件的加載,定義全局私有變量private LatinKeyboard mQwertyKeyboard;在onInitializeInterface()方法中進行初始化mQwertyKeyboard = new LatinKeyboard(this, R.xml.qwerty)。最后在onKey(int primaryCode, int[] keyCodes)方法中進行鍵盤的點擊切換的代碼開發;以此,便可以完成一個集藏文、英文字母、數字、符號為一體的藏文輸入法。測試時可以在Eclipse開發環境中新建Android project工程,在工程中使用EditText組件,并將其字體顯示屬性設置setTypeface(tf),tf是Typeface實例,需要引入相應的藏文字庫,字庫可以選擇微軟的Himalaya字庫,經過測試可以完美的實現藏文文字的輸入。最終的輸入法界面及測試如圖2所示。

3 結束語

該藏文輸入法利用了Android系統輸入法框架,在其基礎之上通過一些方法巧妙的方法實現了藏文文字的展示及輸入,并且采用了Unicode編碼,符合國際國家通信網絡要求,完全可以在實際通信網絡中使用。雖然此輸入法簡單,但可以作為其他藏文輸入法的基礎,在此基礎上可以研究聯想字詞藏文輸入法和手寫輸入法,并且還可以作為開發其他少數民族文字Android系統輸入法的參考。

參考文獻

[1] 藏文 [EB/OL].百度百科.

[2] 吳兵,江荻.藏文國際編碼的發展與技術應用[EB/OL].中國知網.

[3] Android平臺輸入法開發解析 [EB/OL].百度百科.

[4] 太清-太清撰寫:藏文字母表 [EB/OL].

作者簡介:

張繼偉(1983-),男,甘肅甘谷人,本科,通信工程師;主要研究方向和關注領域:軟件設計、開發,通信技術、通信行業業務及應用系統、信息化技術及應用。endprint

2.2.3 藏文輸入法實現及測試驗證

在eclipse開發環境中將Android系統開源輸入法實例進行工程導入,并將制作的全部藏文圖標導入res\drawable目錄下,然后在res\xml目錄下新建鍵盤文件并將前面轉換和制作的圖標進行對應,比如:從字形上可以對應的十進制為3904和3984,而其對應的圖標為圖片a1,代碼如下:

其他藏文基本字以此類推,主要是做好全鍵盤的布局,以方便使用者使用。

然后在SoftKeyboard.Java中進行新建鍵盤文件的加載,定義全局私有變量private LatinKeyboard mQwertyKeyboard;在onInitializeInterface()方法中進行初始化mQwertyKeyboard = new LatinKeyboard(this, R.xml.qwerty)。最后在onKey(int primaryCode, int[] keyCodes)方法中進行鍵盤的點擊切換的代碼開發;以此,便可以完成一個集藏文、英文字母、數字、符號為一體的藏文輸入法。測試時可以在Eclipse開發環境中新建Android project工程,在工程中使用EditText組件,并將其字體顯示屬性設置setTypeface(tf),tf是Typeface實例,需要引入相應的藏文字庫,字庫可以選擇微軟的Himalaya字庫,經過測試可以完美的實現藏文文字的輸入。最終的輸入法界面及測試如圖2所示。

3 結束語

該藏文輸入法利用了Android系統輸入法框架,在其基礎之上通過一些方法巧妙的方法實現了藏文文字的展示及輸入,并且采用了Unicode編碼,符合國際國家通信網絡要求,完全可以在實際通信網絡中使用。雖然此輸入法簡單,但可以作為其他藏文輸入法的基礎,在此基礎上可以研究聯想字詞藏文輸入法和手寫輸入法,并且還可以作為開發其他少數民族文字Android系統輸入法的參考。

參考文獻

[1] 藏文 [EB/OL].百度百科.

[2] 吳兵,江荻.藏文國際編碼的發展與技術應用[EB/OL].中國知網.

[3] Android平臺輸入法開發解析 [EB/OL].百度百科.

[4] 太清-太清撰寫:藏文字母表 [EB/OL].

作者簡介:

張繼偉(1983-),男,甘肅甘谷人,本科,通信工程師;主要研究方向和關注領域:軟件設計、開發,通信技術、通信行業業務及應用系統、信息化技術及應用。endprint

2.2.3 藏文輸入法實現及測試驗證

在eclipse開發環境中將Android系統開源輸入法實例進行工程導入,并將制作的全部藏文圖標導入res\drawable目錄下,然后在res\xml目錄下新建鍵盤文件并將前面轉換和制作的圖標進行對應,比如:從字形上可以對應的十進制為3904和3984,而其對應的圖標為圖片a1,代碼如下:

其他藏文基本字以此類推,主要是做好全鍵盤的布局,以方便使用者使用。

然后在SoftKeyboard.Java中進行新建鍵盤文件的加載,定義全局私有變量private LatinKeyboard mQwertyKeyboard;在onInitializeInterface()方法中進行初始化mQwertyKeyboard = new LatinKeyboard(this, R.xml.qwerty)。最后在onKey(int primaryCode, int[] keyCodes)方法中進行鍵盤的點擊切換的代碼開發;以此,便可以完成一個集藏文、英文字母、數字、符號為一體的藏文輸入法。測試時可以在Eclipse開發環境中新建Android project工程,在工程中使用EditText組件,并將其字體顯示屬性設置setTypeface(tf),tf是Typeface實例,需要引入相應的藏文字庫,字庫可以選擇微軟的Himalaya字庫,經過測試可以完美的實現藏文文字的輸入。最終的輸入法界面及測試如圖2所示。

3 結束語

該藏文輸入法利用了Android系統輸入法框架,在其基礎之上通過一些方法巧妙的方法實現了藏文文字的展示及輸入,并且采用了Unicode編碼,符合國際國家通信網絡要求,完全可以在實際通信網絡中使用。雖然此輸入法簡單,但可以作為其他藏文輸入法的基礎,在此基礎上可以研究聯想字詞藏文輸入法和手寫輸入法,并且還可以作為開發其他少數民族文字Android系統輸入法的參考。

參考文獻

[1] 藏文 [EB/OL].百度百科.

[2] 吳兵,江荻.藏文國際編碼的發展與技術應用[EB/OL].中國知網.

[3] Android平臺輸入法開發解析 [EB/OL].百度百科.

[4] 太清-太清撰寫:藏文字母表 [EB/OL].

作者簡介:

張繼偉(1983-),男,甘肅甘谷人,本科,通信工程師;主要研究方向和關注領域:軟件設計、開發,通信技術、通信行業業務及應用系統、信息化技術及應用。endprint

主站蜘蛛池模板: 综1合AV在线播放| 国产精品亚洲专区一区| 国产农村妇女精品一二区| 久久亚洲国产最新网站| 在线另类稀缺国产呦| 蜜臀AV在线播放| 国产喷水视频| 亚洲AⅤ无码日韩AV无码网站| 国产超薄肉色丝袜网站| 国产精品欧美激情| 日韩无码黄色网站| 久一在线视频| 2021国产精品自产拍在线| 青青青亚洲精品国产| 国产一级在线观看www色 | 久草视频精品| 久久精品一卡日本电影| 日韩黄色在线| 黄片在线永久| 亚洲欧洲自拍拍偷午夜色无码| 波多野结衣一区二区三区四区视频 | 欧美中文一区| 国产精品永久在线| 久久综合丝袜长腿丝袜| 久草网视频在线| 伊人久热这里只有精品视频99| 国产香蕉97碰碰视频VA碰碰看| 久久人人爽人人爽人人片aV东京热 | 欧美综合区自拍亚洲综合天堂| 国产99精品久久| 国产91在线|中文| 欧美亚洲一二三区| 性视频久久| www.99在线观看| 在线观看免费人成视频色快速| 国产精品开放后亚洲| 国产黑丝视频在线观看| 在线欧美一区| 999国产精品| 日韩在线网址| 亚洲国产日韩欧美在线| 成人国产精品一级毛片天堂| 狠狠ⅴ日韩v欧美v天堂| 91无码网站| 日本精品视频一区二区| 凹凸国产分类在线观看| 久久毛片基地| 日韩欧美国产综合| 亚洲最黄视频| 国产成人无码AV在线播放动漫| 天堂网国产| 久久狠狠色噜噜狠狠狠狠97视色| 国产精品自拍合集| 亚洲VA中文字幕| 深爱婷婷激情网| 一级黄色欧美| 蜜臀av性久久久久蜜臀aⅴ麻豆| 露脸真实国语乱在线观看| 国产麻豆另类AV| 思思热精品在线8| 67194在线午夜亚洲| 国产成人三级在线观看视频| 日韩精品无码免费一区二区三区| 国产福利在线免费观看| 天堂成人在线| 666精品国产精品亚洲| 青青国产成人免费精品视频| 亚洲精品另类| 幺女国产一级毛片| 激情网址在线观看| 亚洲乱伦视频| 老司机久久精品视频| 亚洲日本精品一区二区| 成年人国产视频| 国产精品美女网站| 伊人网址在线| 中字无码精油按摩中出视频| 亚洲一区二区三区中文字幕5566| 色香蕉影院| 国产精鲁鲁网在线视频| 亚洲国产日韩欧美在线| 看av免费毛片手机播放|