2
入力メソッドのサービスで、現在のカーソル位置の前にテキストを選択しようとしています。以下はコードスニペットですAndroid IMEを使用した選択
InputConnection inputConnection = getCurrentInputConnection();
ExtractedText extractedText = inputConnection.getExtractedText(new ExtractedTextRequest(), 0);
inputConnection.setSelection(extractedText.selectionStart-1,extractedText.selectionEnd);
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.updateSelection(null, extractedText.selectionStart-1,extractedText.selectionEnd, 0, 0);
これは非常に不安定な振る舞いをしています。時にはカーソルを一歩前に戻すこともあります。
誰かが私が間違っていることを指摘できますか?
ADDITION:この質問は、しばらくの間未解決の残っているので
、私は別の問題を提起したいと思います。私はテキストを選択するいくつかの代替方法を探していました。ハッカーのキーボードでシフトを押してから矢印キーを押すとトリックはしますが、プロセスを複製することはできません。私はmeta_shift_onフラグと一緒にキーパッドを押して、キーパッドを押してみました。
しかし、それは動作していません...再び、私は間違っていますか?