Androidアプリで、キーボード表示時には、対象とする部分を表示させたまま、全体をスクロールさせたり移動させたりという挙動させているものがある。
これには、AndroidManifest.xml で adustResize と設定だけすればいいと思っていたが、実はそれだけではないようだ。
AndroidManifest.xmlのactivityタグの属性として、「android:windowSoftInputMode=”adjustResize” 」と追加してやって、さらに、キーボード表示にはどの部分を縮小するか、という部分も必要の模様。
レイアウト設定時に、余白をこのコントロールに割り当てる、といった設定をしていると思うけど、この設定こそが、縮小されるべき点を示しているという感じだろうか。
だから、android:layout_weightの設定が存在しないと、adjustResizeの効果も出せず、うまく再レイアウトできない。
この結論に行き着くまで結構かかったので、こうしてメモってみました。
コメント