小编J.K*_*Kim的帖子

InputConnection.commitCorrection() 似乎无法正常工作

我正在为Android开发软键盘。我想使用 InputConnection.commitCorrecrion() 更正一些文本,如果按下与 Keyboard.KEYCODE_DONE 相对应的键。但是,文本不会改变,只是闪烁一次。我怎么解决这个问题?

public class SimpleIME extends InputMethodService
    implements KeyboardView.OnKeyboardActionListener {
....

@Override
public void onKey(int primaryCode, int[] keyCodes) {
    InputConnection ic = getCurrentInputConnection();
    switch(primaryCode){
    ....

        case Keyboard.KEYCODE_DONE:
            ic.commitCorrection(new CorrectionInfo(oldTextPosition, oldText, newText));
            break;
    ....
    }
}
Run Code Online (Sandbox Code Playgroud)

android ime android-softkeyboard android-input-method

6
推荐指数
1
解决办法
945
查看次数