4

Android にカスタム キーボードを実装しようとしています。Webview にテキストを入力したいと考えています。Webview のどこでもヒットしたときにキーボードを表示したくないので、次のようなリスナーを考えていました。

 webview.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // TODO Auto-generated method stub

            if (((WebView) v).getHitTestResult().getType() == EDIT_TEXT_TYPE)
                  showMyKeyboardHere();

            return false;
        }
    });

私のリスナーです。編集テキストフィールドを押した後にキーを押すと、EDIT_TEXT_TYPEが返されるようです。そのため、編集テキスト フィールドを押すと UNKNOWN_TYPE が返され、その後別の場所でクリックすると EDIT_TEXT_TYPE が返されます。私の推測では、タッチが登録されていない Webview に送信される前に、OnTouchListener が発生します。それを変更する方法はありますか?

ここで私の質問: このアプリケーションではカスタム キーボードのみが必要なので、通常のキーボードを起動し、すぐに非表示にして自分のキーボードを表示するために呼び出されたイベントをリッスンする方法はありますか?

4

0 に答える 0