android:windowSoftInputMode="adjustNothing"
に設定された MainActivity がありAndroidManifest
ます。テーマには親がありTheme.AppCompat.Light.NoActionBar
ます。このアクティビティに DialogFragment を追加し、その中に AlertDialog を表示してから alertDialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
、フラグメント内に設定します。
現在、Android 5.1.1 では期待どおりに動作します。ダイアログの作成時にキーボードが自動的に表示されません。ユーザーがダイアログ内の EditText をタップすると、キーボードがポップアップし、オーバーラップしないようにアクティビティのサイズを変更します。
問題は、Android M ではこれが起こらないことです。ダイアログの作成時にはキーボードは実際には表示されませんが、ユーザーが EditText に触れた後にキーボードがポップアップすると、ダイアログに重なって表示されます。
なぜこれが M で発生するのか、以前のバージョンではすべて正常に動作するのか、何か考えはありますか?
編集:どうやら問題の基本のみで HelloWorld プロジェクトを作成した後、以下の 2 つのアクティビティ テーマ要素が原因でキーボードのサイズが変更されないことがわかりました。誰かがこの問題に対する恒久的な解決策を持っているとしたら、私はすべて耳 (またはむしろ目) です。
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:windowTranslucentStatus">true</item>
</style>