當前位置:首頁 » 編程軟體 » 安卓編程輸入法

安卓編程輸入法

發布時間: 2022-05-28 17:14:22

Ⅰ android 通過代碼動態切換輸入法

這個可以通過將輸入法的ID寫入系統設置中來完成,大概代碼是這樣的:
Settings.Secure.putString(mContext.getContentResolver()
,Settings.Secure.DEFAULT_INPUT_METHOD,"輸入法的ID");
InputManagerService會監聽這個設置項的改變。

Ⅱ 如何給不同的安卓程序設定各自默認的輸入法

可以在,系統設置--語言和鍵盤--選擇所需輸入法。編輯簡訊,長按編輯窗口(輸入內容之處)—輸入法,選擇何種輸入法。

Ⅲ android ui怎麼開發出搜狗輸入法的程序

一、結構
public final class InputMethodManager extends Object
java.lang.Object
android.view.inputmethod.InputMethodManager

二、類概述
整個輸入法框架(IMF)結構的核心API,應用程序之間進行調度和當前輸入法交互。你可以用Context.getSystemService()取得這一介面的實例。
架構總述(Architecture Overview)
輸入法框架(IMF)共有三個主要部分:
* 輸入法管理器,管理各部分的交互。它是一個客戶端API,存在於各個應用程序的context中,用來溝通管理所有進程間交互的全局系統服務。
* 輸入法(IME) ,實現一個允許用戶生成文本的獨立交互模塊。系統綁定一個當前的輸入法。使其創建和生成,決定輸入法何時隱藏或者顯示它的UI。同一時間只能有一個IME運行。
* 客戶應用程序,通過輸入法管理器控制輸入焦點和IME的狀態。一次只能有一個客戶端使用IME。
應用程序(Applications)
大多數情況下,使用標准TextView或其子類的應用程序只要做少量工作就可以讓軟鍵盤(soft input methods)正常工作。你要注意的是:
* 正確設置你的可編輯文本視圖inputType,這樣輸入法有足夠的上下文幫助用戶向其輸入文本。
* 當輸入法顯示時妥善處理隱藏屏幕空間。理想的情況下應用程序應處理窗口變小,如必要你可以利用系統執行平移窗口。你應在活動(activity)中設置windowSoftInputMode屬性或調整創建窗口的相應值,以便系統決定平移或縮放(它會嘗試自動調整但可能出錯)。
* 你還可以通過相同的windowSoftInputMode控制窗口的首選軟鍵盤狀態(打開、關閉等)。
通過API可以與IMF及其IME交互實現更細致的控制,如顯示或輸入區域,用戶選取某輸入法等。
當你編寫自己的文本編輯器的時候,你要實現onCreateInputConnection(EditorInfo)以返回你的InputConnection的介面實例,用來允許IME和你的文本編輯域來交互。
輸入法(Input Methods)
一個輸入法(IME)是Service(服務)的實現,通常繼承自 InputMethodService。IME提供核心的 InputMethod介面,盡管提供InputMethod通常是由InputMethodService來處理,而IME的實現只需要處理更高層的API。
更多信息參閱InputMethodService。
安全(Security)
輸入法關繫到許多安全問題,因其基本不受約束地驅動UI並監視用戶輸入。Android輸入法框架還允許調度第三方IME,所必須小心以限制他們的選擇和相互作用。
以下是IMF背後安全架構的要點:
* 只允許系統訪問經BIND_INPUT_METHOD許可權許可訪問IME的InputMethod介面。通過綁定到要求這個許可權的服務來強制實現這一點。所以系統可以保證沒有不被信任的客戶端在它的控制之外訪問到當前的輸入法。
* IMF中可能有許多客戶進程,但在同一時間只有一個是激活的。未激活客戶端不能與IMF核心交互通過下述機制實現。
* 輸入法客戶端只可訪問InputMethodSession介面。每個客戶端創建一個介面實例,只有與激活客戶相關聯的會話的調用才會被IME處理。這點通過普通IME的 AbstractInputMethodService執行,必須由IME顯式的處理,而IME正是InputMethodSession的自定義實現。
* 只有激活的InputConnection接受操作。IMF通知每個客戶進程是否激活,IMF忽略非激活進程對當前輸入聯接的調用。這確保了當前IME只將事件和文本編輯交付用戶可見焦點的UI。
* 一個IME永遠不能在屏幕關閉時與 InputConnection交互。這是通過當屏幕關閉時所有客戶端無效,並防止不良IME在用戶無法關注其行為時驅動UI。
* 客戶應用程序可以要求系統選取一個新的IME,但不能編程式選擇之一。這是避免惡意程序在用戶導航到其它應用程序時,選擇自己的IME並保持運行。也就是說,IME可以編程式的要求系統選擇其它IME,因它完全控制了用戶輸入。
用戶在可切換至一個新的IME前必須顯式的啟用它,以確認系統了解它,使其處於可用狀態。

安卓手機的輸入法設置 如何切換手機輸入法

若使用的是vivo手機,可進入設置--系統管理/更多設置--輸入法--默認輸入法--切換至您想要設置的輸入法即可;也可長按文本輸入區域,點擊切換圖標(輸入法)後選擇自己想要的輸入法。

Ⅳ 如何在Android開發中對輸入法進行顯示和隱藏

/**
*設置輸入法,如果當前頁面輸入法打開則關閉
*@paramactivity
*/
publicvoidhideInputMethod(Activityactivity){
Viewa=activity.getCurrentFocus();
if(a!=null){
InputMethodManagerimm=(InputMethodManager)activity.getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE);
try{
imm.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS);
}catch(Exceptione){
e.printStackTrace();
}
}
}


/**
*強制顯示輸入法
*@paramactivity
*/
publicvoidtoggleSoftInput(Viewview){
try{
InputMethodManagerimm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
}catch(Exceptione){

}
}


以上兩個函數,就是顯示和隱藏,你直接調用一下即可

熱點內容
旗魚影視緩存教程 發布:2024-05-02 23:57:46 瀏覽:592
c語言中的階層 發布:2024-05-02 23:52:14 瀏覽:861
qt編程快速入門 發布:2024-05-02 23:41:04 瀏覽:973
linux搭建域名伺服器 發布:2024-05-02 23:28:36 瀏覽:362
java如何將class文件反編譯 發布:2024-05-02 23:22:06 瀏覽:500
新一代唐dm哪個配置最劃算 發布:2024-05-02 22:45:16 瀏覽:229
安卓怎麼安裝到sd卡 發布:2024-05-02 22:41:32 瀏覽:224
web聊天源碼 發布:2024-05-02 22:41:29 瀏覽:286
php定時腳本 發布:2024-05-02 22:18:41 瀏覽:312
雲服務可以替代普通伺服器么 發布:2024-05-02 21:57:11 瀏覽:944