問題タブ [window-soft-input-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
782 参照

android - キーボードを開いたときにレイアウトが調整されない

こんにちは、activity.xmlファイルに次のレイアウトがあります

次の行を追加しましたManifest.xml

しかし、Buttons align parent bottomキーボードを開くと非表示になります。レイアウト自体のサイズは変更されません。

私は何が欠けていますか?

更新されたビュー

scrollviewビューを更新してと の間に追加しtoolbarましたbuttons。提案されているように、アクティビティにも追加getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);しました。機能しますが、完全ではありません。Buttonsでビューを重ねますscroll view。添付画像ですマイアプリの画像

0 投票する
1 に答える
236 参照

android - 向きを変えるとキーボードが隠れる

似たような質問はすでに何度か出ていますが、あってはならない奇妙な規則性を発見しました。

そのレイアウトにはありActivityます。EditTextユーザーがそのフィールドをクリックすると、ソフト入力が表示されます。フラグを にandroid:windowSoftInputMode="stateUnchanged"追加するとAndroidManifest、デバイスの向きが変わってもすべてが期待どおりに機能します - キーボードはその状態を保持します。しかし、Fragmentその上にActivityあるEditText場合Fragmentは機能しません。AndroidManifestこの場合、フラグオンはスキップされ(フラグはカバーのみActivity)、向きの変更中にキーボードが消えると想定しています。

向きの変更時にキーボードの状態を保持するためのクリーンなソリューションが見つかりませんでした。手動でキーボードをオンonActivityCreated()に表示する解決策を見ましたが、方向の変更に耐えられるオブジェクトの変数でキーボードの可視性状態を保持する必要があるため、好きではありません。私が見つけたのは、にある場合EditTextActivityユーザーが触れず、フォーカスされていない場合でも、キーボードはその状態を保持することです。これはまったく予想外です。

で使用されているため、取り外しFragmentて頼ることはできません。しかし、これは が に直接接続されている場合にも発生することを確認しました。ActivityFragmentsViewPagerFragmentActivity

また、チェックしたすべてのアプリケーションで、その問題が何らかの形で解決されていることもわかりました。

フラグメントによる向きの変更時にキーボードの状態を保持するためのクリーンなソリューションはありますか?

編集:android:configChanges="orientation|screenSize"オプションも嫌いです。