正文
一、結構
public interface InputMethodSession
android.view.inputmethod. InputMethodSession
間接子類
二、概述
三、内部類
interface InputMethodSession.EventCallback
四、公共方法
public abstract void appPrivateCommand (String action, Bundle data)
執行由應用程式發往輸入法的私有指令。它可用于提供專屬域功能,僅專屬于特定的輸入法及其用戶端
參數
action 執行命名的名稱。它必須是一個域名稱,如字首你自己的包名稱,這樣不同的開發者就不産生指令沖突。
data 随指令包括的任何資料。
public abstract void dispatchKeyEvent (int seq, KeyEvent event, InputMethodSession.EventCallback callback)
當按鍵按下時調用此方法。完成事件時,本方法的實作方法必須調用callback回調函數并傳回結果。
如果輸入法處理此事件傳回true,否則傳回false,調用者(如應用程式)将處理事件。
event 按鍵事件
傳回值
輸入法是否處理本事件。
參見
public abstract void dispatchTrackballEvent (int seq, MotionEvent event, InputMethodSession.EventCallback callback)
發生軌迹球事件時調用此方法。
event 移動事件
public abstract void displayCompletions (CompletionInfo[] completions)
由文本編輯器調用自動補全,完成後通知輸入法補全有效。可被用于輸入法向使用者顯示備選文本以備插入。
completions 補充文本數組有效,并以最佳結果開頭。如果數組為空,存在的補充将被移除。
public abstract void finishInput ()
當應用程式要停止接收文字輸入時調用此方法。
public abstract void toggleSoftInput (int showFlags, int hideFlags)
切換軟鍵盤(soft input)視窗。應用程式能切換軟鍵盤(soft input)視窗
參數
showFlags 提供附加的操作标志。可能為0或設定SHOW_IMPLICIT, SHOW_FORCED位。
hideFlags 提供附加的操作标志。可能為0或設定HIDE_IMPLICIT_ONLY, HIDE_NOT_ALWAYS位。
public abstract void updateCursor (Rect newCursor)
當目标輸入域的光标位置在自身視窗内移動時調用此方法。本方法通常不被調用,但輸入法要求更新時可被調用。
newCursor 目前輸入區域視窗坐标系下光标顯示的矩陣區域。
public abstract void updateExtractedText (int token, ExtractedText text)
token 輸入法提供了分辨要求的令牌。
text 新的提取文本。
public abstract void updateSelection (int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
當目标輸入域的光标或標明變化時,調用此方法。
oldSelStart 之前的選擇開始位置相對于光标的文本偏移。
oldSelEnd 之前的選擇結束位置相對于光标的文本偏移。
newSelStart 新的選擇初始位置相對于光标的文本偏移。
newSelEnd 新的選擇結束位置相對于光标的文本偏移。
candidatesStart 目前坐标系下文本文本開始位置的文本偏移。
candidatesEnd 目前坐标系下文本文本結束位置的文本偏移。
本文轉自over140 51CTO部落格,原文連結:http://blog.51cto.com/over140/582428,如需轉載請自行聯系原作者