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