?
This document uses PHP Chinese website manual Release
InputMethodSession
版本:Android 2.3 r1
?
結(jié)構(gòu)
繼承關(guān)系
public interface InputMethodSession
????????
android.view.inputmethod. InputMethodSession
?
子類及間接子類
間接子類
AbstractInputMethodService.AbstractInputMethodSessionImpl,InputMethodService.InputMethodSessionImpl
?
類概述
InputMethodSession接口提供給每個客戶端的InputMethod
可安全地暴露在應用程序中。
應用程序通常不自己使用本接口,而是依靠TextView
和EditText
提供的標準交互。
?
內(nèi)部類
??? interface ???????? InputMethodSession.EventCallback
????????
?
公共方法
???????? public abstract void appPrivateCommand (String action, Bundle data)
執(zhí)行由應用程序發(fā)往輸入法的私有命令。它可用于提供專屬域功能,僅專屬于特定的輸入法及其客戶端
?????????????????? 參數(shù)
action ???? 執(zhí)行命名的名稱。它必須是一個域名稱,如前綴你自己的包名稱,這樣不同的開發(fā)者就不產(chǎn)生命令沖突。
data ??????? 隨命令包括的任何數(shù)據(jù)。
?
public abstract void dispatchKeyEvent (int seq, KeyEvent event, InputMethodSession.EventCallback callback)
當按鍵按下時調(diào)用此方法。完成事件時,本方法的實現(xiàn)方法必須調(diào)用callback回調(diào)函數(shù)并返回結(jié)果。
如果輸入法處理此事件返回true,否則返回false,調(diào)用者(如應用程序)將處理事件。
?????????????????? 參數(shù)
event ????? 按鍵事件
返回值
輸入法是否處理本事件。
參見
???
?????????????????? ERROR(/#dispatchKeyUp)
???
?????????????????? KeyEvent
?
public abstract void dispatchTrackballEvent (int seq, MotionEvent event, InputMethodSession.EventCallback callback)
發(fā)生軌跡球事件時調(diào)用此方法。
如果輸入法處理此事件返回true,否則返回false,調(diào)用者(如應用程序)將處理事件。
?????????????????? 參數(shù)
event ????? 移動事件
返回值
輸入法是否處理本事件。
參見
??????????????????????????? MotionEvent
?
public abstract void displayCompletions (CompletionInfo[] completions)
由文本編輯器調(diào)用自動補全,完成后通知輸入法補全有效。可被用于輸入法向用戶顯示備選文本以備插入。
?????????????????? 參數(shù)
completions ?? 補充文本數(shù)組有效,并以最佳結(jié)果開頭。如果數(shù)組為空,存在的補充將被移除。
?
public abstract void finishInput ()
當應用程序要停止接收文字輸入時調(diào)用此方法。
?
public abstract void toggleSoftInput (int showFlags, int hideFlags)
切換軟鍵盤(soft input)窗口。應用程序能切換軟鍵盤(soft input)窗口
?????????????????? 參數(shù)
showFlags ????? 提供附加的操作標志。可能為0或設(shè)置SHOW_IMPLICIT, SHOW_FORCED位。
hideFlags ??????? 提供附加的操作標志??赡転?/span>0或設(shè)置HIDE_IMPLICIT_ONLY, HIDE_NOT_ALWAYS位。
?
public abstract void updateCursor (Rect newCursor)
當目標輸入域的光標位置在自身窗口內(nèi)移動時調(diào)用此方法。本方法通常不被調(diào)用,但輸入法要求更新時可被調(diào)用。
?????????????????? 參數(shù)
newCursor ???? 當前輸入?yún)^(qū)域窗口坐標系下光標顯示的矩陣區(qū)域。
?
public abstract void updateExtractedText (int token, ExtractedText text)
當內(nèi)容變化時文本編輯器調(diào)用此方法,通知其新提取文本。本方法僅在輸入法調(diào)用InputConnection.getExtractedText()
并帶有通報更新選項時才被調(diào)用。
?????????????????? 參數(shù)
token ????? 輸入法提供了分辨要求的令牌。
text ???????? 新的提取文本。
?
public abstract void updateSelection (int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
當目標輸入域的光標或選定變化時,調(diào)用此方法。
?????????????????? 參數(shù)
oldSelStart ???? 之前的選擇開始位置相對于光標的文本偏移。
oldSelEnd ??????? 之前的選擇結(jié)束位置相對于光標的文本偏移。
newSelStart ?? 新的選擇初始位置相對于光標的文本偏移。
newSelEnd ???? 新的選擇結(jié)束位置相對于光標的文本偏移。
candidatesStart ???? 當前坐標系下文本文本開始位置的文本偏移。
candidatesEnd ?????? 當前坐標系下文本文本結(jié)束位置的文本偏移。
?
補充
文章鏈接
android 鍵盤的啟動關(guān)閉、顯示、隱藏及其 bug