WebView(SlidingTabLayoutを持つViewPager内のフラグメント内)があります。キーボードの外側をクリックしてキーボードを閉じた後、AdjustResizeが機能しない
WebViewを使用して入力する場合、レイアウトがサイズ変更されて入力が表示されるようにします。
WebViewでテキスト入力をクリックすると、ソフトキーボードが表示され、レイアウトのサイズが変更されます。テキストを入力して、ソフトキーボードの戻るボタンを使用して送信するか、戻るボタンを使用して入力をキャンセルすることができます。この後、キーボードが消え、レイアウトのサイズが戻されます。 AdjustResize
の動作を修正します。
しかし、ソフトキーボードの外側をクリックしてキーボードを閉じると(たとえば、Googleでクエリを入力してWebViewで検索ボタンを押すと)、キーボードが隠れ、レイアウトのサイズ変更に約2〜3秒かかります私のレイアウトの最下部に2〜3秒間空白があります)。その後、テキスト入力を選択すると、キーボードはWebView(adjustPan)をオーバーレイします。
WebViewを押してキーボードを閉じると、adjustResize
の動作が維持されることを確認するにはどうすればよいですか。
私は(例えばonTouchから)の再設定AdjustResizeを試してみたが、これは効果がありません:
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
私もfollowing solutionを試してみたが、これは何の変化も与えません。
さらに、私はこれがフォーカスの問題ではないと思っています(キーボードが表示され、webviewが応答するため)。そして、私は私のビューからフォーカスを頼むん:
webView.setFocusable(true);
webView.setFocusableInTouchMode(true);
私は新しいプロジェクトを作成し、いくつかのコードをコピーして貼り付け、自分のデバイスで直面している問題を見たいと思います。これが可能になるように編集できますか? – NecipAllef
@NecipAllefすでにいくつかのファイルを投稿しました。しかし、あなたが望むなら私はあなたに私の完全なプロジェクトを送ることができます。電子メール(24HR)l:[email protected] – Mdlc
WebViewのソースコードを見たのは約1.2k行のコードであり、そのほとんどはあなたの問題に関係していないと思います。問題を観察できるようにするコードをいくつか用意することはできますが、コンパイルやデバッグが難しくない場合は、ヘルプをより早く得ることができます。ですから、サンプルプロジェクトを作成して共有することをお勧めします。私はそれがGithub経由で可能であると信じています。 – NecipAllef